Проблема с выполнением JavaScript кода из Java-апплета
Пытаюсь запустить JavaScript функцию из своего Java-апплета, но постоянно получаю ошибку. Читал в документации, что можно использовать метод showDocument для этого.
Попробуй использовать new URL(“javascript:confirm(‘Привет мир!’);”) или JSObject для доступа к DOM. Какую версию Java используешь и в каком браузере тестируешь код?
У меня была такая же проблема пару лет назад. Современные браузеры блокируют javascript: протокол в showDocument из-за безопасности. Попробуй JSObject класс - он дает прямой доступ к браузерному окну. Что-то вроде JSObject window = JSObject.getWindow(this); потом window.eval(“confirm(‘Привет мир!’)”);. Только учти - многие браузеры уже не поддерживают апплеты вообще, может стоит переходить на webassembly или обычный javascript?
showDocument() не работает с протоколом javascript в современных браузерах по причинам безопасности. Используй JSObject из пакета netscape.javascript для вызова js функций напрямую. Что-то вроде JSObject.getWindow(this).call(“confirm”, new Object{“Привет мир!”}). Не забудь импортировать netscape.javascript.JSObject и проверь, поддерживает ли браузер апплеты.