Java WebStart java.lang.NullPointerException в java.awt.Window.getWindows

В настоящее время я подключаюсь к Java-приложению веб-запуска (что-нибудь отсюда: https://docs.oracle.com/javase/tutorial/uiswing/examples/misc/index.html) с помощью API Java Attach.

Это работает без проблем, но теперь я хочу перебрать все доступные кадры, используя

for (Frame f : java.awt.Frame.getFrames())

Но это приводит к

java.lang.NullPointerException
at java.awt.Window.getWindows(Unknown Source)
at java.awt.Window.getWindows(Unknown Source)
at java.awt.Frame.getFrames(Unknown Source)
at com.asc.screen.scan.javascan.javascanagent.util.GuiWalkerTexasRanger.walkGui(GuiWalkerTexasRanger.java:151)
at com.asc.screen.scan.javascan.javascanagent.ComponentRegistry.initialScan(ComponentRegistry.java:124)
at com.asc.screen.scan.javascan.javascanagent.ComponentRegistry.init(ComponentRegistry.java:76)
at com.asc.screen.scan.javascan.javascanagent.JavaScanAgent.loadFilter(JavaScanAgent.java:291)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
...

Может быть, я что-то здесь упускаю, но не должно ли быть возможно получить доступ ко всем фреймам внутри апплета? Этот метод отлично работает для приложений без апплетов.

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

Заранее спасибо.

0 ответов

Другие вопросы по тегам