Мне нужно программно установить дату возврата ОС к Java

#date #jvm

#Дата #jvm

Вопрос:

Мне нужно установить дату, которую JVM обычно получает от ОС.

Почему? У нас есть приложение, которое взаимодействует с устаревшим приложением. Все данные на устаревшем сервере всегда имеют некоторую дату в прошлом (клиент создает отчеты по сохраненной копии текущих данных (вчерашних данных), чтобы не влиять на время отклика транзакций на реальном компьютере, а демо-версии выполняются на машинах разработчиков, также с некоторой датой в прошлом)

Наше приложение должно публиковать транзакции не позднее даты в устаревшем приложении. Устаревшее приложение находится на другом сервере. У нас есть процесс, который возвращает текущую дату данных, и нам нужно заставить Java-приложение полностью работать на эту дату.

Мы не можем изменить системную дату, поскольку хранилище данных также работает в этом окне. Таким образом, единственной альтернативой является изменение даты, которую, по мнению JVM, она получает от ОС.

Есть идеи?

Ответ №1:

Собственный агент Java должен сделать свое дело:

http://blogs.captechconsulting.com/blog/david-tiller/not-so-secret-java-agents-part-1

Я полагаю, что перехвата вызовов System.currentTimeMillis() должно быть достаточно.

Комментарии:

1. Спасибо за это … мы отправляемся, чтобы 1) понять это и 2) попробовать .. мы свяжемся с вами!