我正在尝试将库添加到applet。我正在使用jnlp + deploy java javascript。似乎所有东西都配置正确,找不到类(找不到类的异常)。
这是我的代码:
JNLP:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>KeystoreTestApplet</title>
<vendor>Paulie</vendor>
</information>
<resources>
<!-- Application Resources -->
<j2se version="1.6+"
href="http://java.sun.com/products/autodl/j2se"/>
<jar href="KeystoreTestApplet.jar" main="true" />
<jar href="xmlsec-1.4.5.jar" />
<jar href="xml-apis-1.3.03.jar" />
<jar href="xercesImpl-2.9.1.jar" />
<jar href="xalan-2.7.1.jar" />
<jar href="sunpkcs11.jar" />
<jar href="serializer-2.7.1.jar" />
<jar href="commons-logging-api-1.1.jar" />
<jar href="commons-logging-1.1.jar" />
</resources>
<applet-desc
name="KeystoreTestApplet"
main-class="KeystoreJApplet"
width="600"
height="370">
<param name="MAYSCRIPT" value="true"/>
</applet-desc>
<update check="background"/>
<security>
<all-permissions/>
</security>
</jnlp>
HTML:
<script src="deployJava.js"></script>
<script>
var attributes = { codebase:'.', code:'KeystoreJApplet', width:600, height:370} ;
var parameters = {jnlp_href: 'KeystoreTestApplet.jnlp', mayscript: 'true'} ;
deployJava.runApplet(attributes, parameters, '1.6');
</script>
applet jar,html页面和库jar都在同一个目录中。
感谢您的帮助。
答案 0 :(得分:4)
<jnlp spec="1.0+" codebase="." href="">
codebase
。codebase
的显式(非相对)网址。当你在它时,要么为href
指定一个合理的值,要么删除整个字段。
如果JNLP文件不能按预期工作,它还需要付费。我(帮忙写&amp;)推荐JaNeLA。
BTW - JNLP小程序是否支持mayscript
?
答案 1 :(得分:2)
我在一点点不同的地方发现了实际问题。
这些库不包含在jnlp文件中的路径中,而是包含在清单中。清单路径已由IDE指定为lib / {library} .jar。所以java正在不同的目录中搜索jar。