Если программа Java пытается выполнить операции с графическим интерфейсом, например создать модальный индикатор выполнения, в то время как сеанс RDP отключен, выдается исключение Headless, хотя среда не обезглавлена, она просто отключена.
Похоже, это связано с https://bugs.openjdk.org/browse/JDK-8340992 и https://bugs.openjdk.org/browse/JDK-8336862, но обходных путей не предусмотрено.
Есть ли обходной путь, который можно реализовать во время выполнения?
Единственные обходные пути, которые мы можем придумать:
- Переписать все на другом языке. Непростая задача.
- Понизьте все экземпляры Java/JDK до версии 21.0.3 и не применяйте никаких обновлений безопасности.
- Прекратите всю работу и начните заново за любые отключения RDP, вызванные намеренным отключением пользователя, проблемами с Интернетом и т. д. Это то, где мы сейчас находимся, и это вызывает проблемы в работе.
В основном мы используем простые приложения, состоящие из JFrames, JTextComponents и ProgressMonitor с парой самостоятельных -размещенные приложения JediTerm.
Подробнее здесь: https://stackoverflow.com/questions/792 ... -exception
Мобильная версия