我们正在从Applet迁移到JWS。如何为JWS提供依赖jar?请检查我的JNLP文件。
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://localhost:8080/JWSINSTEADOFAPPLET/" href="HelloWorld.jnlp">
<information>
<title>HelloWorld</title>
<vendor>IBM - JWS example of HelloWorld</vendor>`
enter code here
<description>HelloWorld - Example of JWS</description>
<description kind="short">HelloWorld example</description>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.3+"/>
<jar href="Harper_Colin.jar" main="true"/>
<jar href="lib/commons-codec-1.10.jar"/>
<jar href="lib/commons-httpclient-3.1.jar"/>
<jar href="lib/commons-logging-1.2.jar"/>
<jar href="lib/commons-net-3.3.jar"/>
<jar href="lib/httpclient-4.0.2-sources.jar"/>
<jar href="lib/httpclient-4.5.3.jar"/>
<jar href="lib/httpcore-4.4.6.jar"/>
<jar href="lib/plugin.jar"/>
</resources>
<application-desc main-class="Harper_Upload_Final"/>
</jnlp>
即使在资源标签下提供了依赖的jar,我也会收到如下错误:
java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpUriRequest
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.getMethod0(Unknown Source)
at java.lang.Class.getMethod(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpUriRequest
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 7 more
请检查以下项目的结构
JWSINSTEADOFAPPLET
|
SRC
|
PACKAGE
|
.java file
|
JBoss 7.1 Runtime
|
Maven Dependencies
|
JRE System Library
|
Web Content
|
META_INF
|
WEB_INF
|
lib
|.jars
HelloWorld.jnlp
index.html
MyHarper.jar
|
pom.xml
需要更改的内容让我知道,提前致谢
答案 0 :(得分:1)
来自this answer ..
WEB-INF节点不是应用程序的公共文档树的一部分。 WEB-INF目录中包含的文件不能直接提供给客户端。&#34;。
尝试直接获取(通过在浏览器中键入路径)以确认服务器将拒绝该请求。