1

这是家庭作业,但问题与编码无关。任务是编写一个在 m-grid 服务器上工作的 java 小程序。我的服务器在 apache 上运行。它有一些 .jar 和 .class 形式的示例小程序。.class 版本有效;.jar 版本在 appletviewer 上工作,但如果我将它们作为作业提交给服务器,它们会中断:

load: class examples/pixelcount/PixelCount.class not found.
java.lang.ClassNotFoundException: examples.pixelcount.PixelCount.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.<init>(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at java.net.HttpURLConnection.getResponseCode(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 7 more
Exception: java.lang.ClassNotFoundException: examples.pixelcount.PixelCount.class

鉴于他们在 appletviewer 上工作,我不太确定问题出在哪里。任何帮助,将不胜感激..

编辑:

不知道我写的清楚没有。通过“.class 版本”,我指的是包含以下内容的 html 文件:

<applet height="300" width="450" code="examples/pixelcount/PixelCount.class"></applet>

和带有以下内容的“.jar”:

<applet height="300" width="450" archive="PixelCount.jar" code="examples.pixelcount.PixelCount.class"></applet>

编辑2:

可以在此处找到提到的示例 jar 文件

4

3 回答 3

0

我认为 PixelCount 类未打包在您的 jar 中。

并且由于错误Caused by: java.net.ConnectException: Connection refused: connect可能是它试图从某个地方的网络获取该类,并且位置不匹配或代理介于两者之间。

编辑

你在 m-server 的某个地方确实有存档,不管它是什么,能找到吗?请参阅Java Applet 标记参考。文档。你可能需要类似的东西

CODEBASE = codebaseURL
This OPTIONAL attribute specifies the base URL of the applet--the directory 
that contains the applet's code. If this attribute is not specified, then the 
document's URL is used.

CODE 是相对于包含 applet 标记的文档的基本 URL。如果您想覆盖它,您可能需要该 CODEBASE 参数。

于 2010-05-08T14:53:20.897 回答
0

它找不到文件 PixelCount.class,它不在目录 examples/pixlecount 中,这就是发生此错误的原因。

于 2010-05-08T14:56:39.690 回答
-2

不要在代码属性中包含 .class 扩展名。

examples.pixelcount.PixelCount的名称。是包含该类 的文件
examples.pixelcount.PixelCount.class的名称。

code 属性应为

code="examples.pixelcount.PixelCount"
于 2010-05-08T15:12:56.733 回答