java applet在chrome中不可见但在FF中工作

时间:2014-02-02 12:12:23

标签: java javascript google-chrome applet

我有一个小程序,在java版本7u45以下和firefox中工作正常但是当我更新java到最新版本我的applet加载但它不会出现,除非我尝试用chrome检查项目,它将显示。 以下是控制台日志:

févr. 02, 2014 11:56:46 AM mt.common.util.applet.myapplet init
Infos: isLoggable(ALL) : true
févr. 02, 2014 11:56:46 AM mt.common.util.applet.myapplet init
Infos: Loading of child applet successfull
févr. 02, 2014 11:56:46 AM mt.common.util.applet.myapplet init
Infos: OK : the child applet is an instance of myapplet 
févr. 02, 2014 11:56:46 AM org.modula.applet.document.myapplet1 init
Infos: init() myapplet1 2.0
févr. 02, 2014 11:56:48 AM org.modula.applet.document.myapplet1 init
Infos: End init()
testmepl6
févr. 02, 2014 11:56:48 AM mt.common.util.applet.applet start
Infos: Start...
我打电话给我的applet:

   var attributes = {id:"appletInstance",
          name:"appletInstance",
          code:"mt.common.util.applet.myapplet",
          codebase:"<%=urlCodeBase %>",
          width:150, height:30};
var parameters = {jnlp_href: "<%=urlJnlp %>"};
<div style="text-align: center; float:right;">
    <%= bordPanelState.getHTMLTop() %>
    <div id="divPopupActions" style="text-align: center; padding: 2px 5px 2px 5px;">

<%if(vUrlFile.size()>0){ %>

        <!---------------------------------------->
        <!---------------- Applet ---------------->
        <!----------------------------------------> 
        <!--    <script src="http://www.java.com/js/deployJava.js"      type="text/javascript"></script> -->
        <script src="<%= rootPath %>include/js/java/deployJava.js"></script>
        <script type="text/javascript">

            deployJava.runApplet(attributes, parameters, '1.6'); 

        </script>

<%} %>

    </div>
    <%= bordPanelState.getHTMLBottom() %>
</div>

这是我的jnlp文件

<?xml version="1.0" encoding="UTF-8"?>
<jnlp href="appletContainer.jnlp">
    <information>
        <title>applet Container</title>
        <vendor>MT</vendor>
    </information>
    <resources>
        <!-- Application Resources -->
        <j2se version="1.7+" href="http://java.sun.com/products/autodl/j2se" download="eager"/>
        <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se" download="eager"/>
        <jar href=myapplet.jar" download="eager"/>
    </resources>
    <applet-desc 
         name="Applet Container"
         main-class="mt.common.util.applet.AppletContainer"
         width="200"
         height="300">
     </applet-desc>
     <update check="always"/>
</jnlp>

2 个答案:

答案 0 :(得分:1)

我认为您的applet基本代码可能存在错误

答案 1 :(得分:0)

正如JaNeLa正确报告的那样,您的jnlp文件存在一些问题。我修复了问题,尝试以下方法:

<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="6.0+" href="appletContainer.jnlp">
    <information>
        <title>applet Container</title>
        <vendor>MT</vendor>
        <offline-allowed />
    </information>
    <update check="always" policy="always"/>

    <resources>
        <j2se version="1.7+" href="http://java.sun.com/products/autodl/j2se"/>
        <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/>
        <jar href="myapplet.jar" download="eager"/>
    </resources>

    <applet-desc 
        main-class="mt.common.util.applet.AppletContainer"
        name="Applet Container"
        width="200"
        height="300"/>
</jnlp>

有趣的是,JaNeLa还报告了关于这两个j2se标签的错误,这是完全有效的。也许Andrew Thompson可以解释这种行为,这对我来说似乎是个错误......