我在 Java 7 中有一个 JApplet,每次我想在浏览器中启动它时,在从 调用
。这是我的堆栈跟踪:getParameter()
时都会收到一个 InvocableTargetException
>JApplet
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.runOnEDTAndWait(Unknown Source)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.instantiateApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
at com.sun.deploy.uitoolkit.impl.awt.OldPluginAWTUtil.invokeAndWait(Unknown Source)
... 5 more
Caused by: java.lang.NullPointerException
at java.applet.Applet.getParameter(Unknown Source)
at TicTacToe.TicTacToeAppletView.<init>(TicTacToeAppletView.java:34)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter$1.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
我的 HTML 文件如下所示:
<applet code="TicTacToe/TicTacToeAppletView.class" width="400" height="400">
<param name=Size value="4">
</applet>
在与 HTML 文件相同的文件夹中,有一个名为 TicTacToe 的文件夹,其中包含所有必需的类文件(当然,否则我会得到 ClassNotFoundException
)。
如果我不使用 getParameter(),它工作得很好。使用此方法的 Java 代码如下所示:
String s = getParameter("Size");
到底是什么造成了如此大的麻烦?
最佳答案
参数名称 Size 不应该用引号引起来吗?
<param name="Size" value="4">
有关使用参数的更多信息,请查看 Defining and Using Applet Parameters Tutorial
关于java - 在 JApplet 中调用 getParameter() 时出现 InvokingTargetException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11424143/