我想在运行applet时摆脱Java Deployment Toolkit。实际上我的客户并不想在applet开始运行之前点击激活。如果JRE安装了DT,就会发生这种情况,这不是我的情况,所以我无法在本地重现。
我使用deployJava.js运行我的applet。
有没有办法直接在我的代码中禁用Deployment Toolkit?我没有指示我的用户在浏览器中禁用/删除DT。
答案 0 :(得分:1)
deployJava.js 是部署工具包。据我所知,它从未安装在浏览器中。它是Web内容,包含applet的页面通常包含带有<script src="https://www.java.com/js/deployJava.js"></script>
的Deployment Toolkit(或者它可以指向捆绑的副本,例如<script src="deployJava.js"></script>
)。
您可以在不使用Deployment Toolkit的情况下将applet放置在页面中,完全取消deployJava.js,只需编写嵌入applet的HTML:
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
codebase="http://java.sun.com/update/1.7.0/jinstall-7u67-windows-i586.cab"
width=400 height=200>
<param name="type" value="application/x-java-applet;version=1.7">
<param name="archive" value="SimpleApplet.jar">
<param name="code" value="com/example/SimpleApplet.class">
<object codetype="application/x-java-applet;version=1.7"
archive="SimpleApplet.jar"
classid="java:com.example.SimpleApplet"
width=400 height=200>
Java plug-in not installed.
</object>
</object>
外部<object>
在Internet Explorer中呈现。不知道如何呈现<object>
元素的浏览器将回退到呈现其嵌套内容,在本例中是内部<object>
元素。有关详细信息,请参阅documentation of <object>。
如果您的applet使用的是JNLP文件,请在<object>
个元素中指定它:
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
codebase="http://java.sun.com/update/1.7.0/jinstall-7u67-windows-i586.cab"
width=400 height=200>
<param name="type" value="application/x-java-applet;version=1.7">
<param name="archive" value="SimpleApplet.jar">
<param name="code" value="com/example/SimpleApplet.class">
<param name="jnlp_href" value="SimpleApplet.jnlp">
<object codetype="application/x-java-applet;version=1.7"
archive="SimpleApplet.jar"
classid="java:com.example.SimpleApplet"
width=400 height=200>
<param name="jnlp_href" value="SimpleApplet.jnlp">
Java plug-in not installed.
</object>
</object>