Alterar data/horário da máquina

Olá.

Gostaria de saber se é possível alterar data/horario da máquina pelo java. Se sim, como pode ser feito…

Obrigado.

Não, não é.

Você pode usar JNI ou JNA para mapear uma chamada a API do Windows e alterar o horário. Porém, não é uma boa prática a aplicação alterar o horário da máquina. Geralmente, o ideal é você trabalhar com um fuso horário, dentro da própria aplicação.

[quote=ViniGodoy]Não, não é.

Você pode usar JNI ou JNA para mapear uma chamada a API do Windows e alterar o horário. Porém, não é uma boa prática a aplicação alterar o horário da máquina. Geralmente, o ideal é você trabalhar com um fuso horário, dentro da própria aplicação.[/quote]

Entendo. Na verdade a idéia é rodar em cliente/servidor e o cliente requisita o horario pro servidor, que retorna o horario e o client sincroniza de acordo com a resposta. Seria um NTP só que entre N clientes e 1 servidor. Apenas fuso horario, acho que nao funciona bem, pois se o horario do cliente for desconfigurado, ele só vai voltar ao normal se for alterado manualmente. Certo ?

Você teria que sincronizar o cliente com o servidor, usando para isso um método pra fazer o delta no cliente. E salvar esse delta antes de sair do programa e ressincronizar de vez enquando. Mas é melhor não mexer na máquina do seu cliente, a menos que seu programa seja exclusivo para isso. Nesse caso, não use java.

A API Joda-Time já tem bindings para a inserção desse tipo de delta. Você pode passar para ela um “atraso” (ou adiantamento) que você quer que todas as classes dela operem.

[quote=ViniGodoy]Você teria que sincronizar o cliente com o servidor, usando para isso um método pra fazer o delta no cliente. E salvar esse delta antes de sair do programa e ressincronizar de vez enquando. Mas é melhor não mexer na máquina do seu cliente, a menos que seu programa seja exclusivo para isso. Nesse caso, não use java.

A API Joda-Time já tem bindings para a inserção desse tipo de delta. Você pode passar para ela um “atraso” (ou adiantamento) que você quer que todas as classes dela operem.

[/quote]

Na verdade, nao tenho duvidas quanto ao calculo do delta, podendo ser RTT/2. A duvida é realmente como alterar data/hora da máquina, pois esta é uma das principais funcionalidades do software, sendo ele desenvolvido em java. Sabe dizer se a API Joda-time altera o horario da máquina?