0

我有一个带有两个小程序的 JSF 页面,两个小程序都通过 javascript 与 JSF 通信,每个小程序都与外部设备通信并获取编码为 base64 的图像

<p:accordionPanel widgetVar="panel" collapsible="true" id="panelApplets">
<p:tab title="Fun 1" id="tabFun1" >
    <h:panelGrid columns="2" cellpadding="10">
        <div id="applet1">
            <applet id="appletFun1"
                    codebase="../applets"
                    code="AppletFun1.class"
                    archive="Fun1.jar"
                    width="800"
                    height="540">
            </applet>
        </div>
        <p:inputTextarea id="res_appletFun1" value="#{bean.stringFun1}" style="width:400px;height:200px;" effectDuration="400"/>                        
    </h:panelGrid>
</p:tab>
<p:tab title="Fun2" id="tabFun2">
    <h:panelGrid columns="2" cellpadding="10">
        <div id="applet2">
            <applet id="appletFun2"
                    codebase="../applets"
                    code="Fun2.class"
                    archive="Fun2.jar"
                    width="220"
                    height="300">
            </applet>
        </div>
        <h:inputHidden id="res_appletFun2" value="#{bean.stringFun2}" />
    </h:panelGrid>
</p:tab>
</p:accordionPanel>

我的问题是其中一个小程序以 corerct 方式获取 base64 编码字符串,而其他小程序则没有。调试不起作用的小程序,我发现以下行无法让 JSObject 返回 jso=null

 JSObject jso = JSObject.getWindow(this);

两个小程序几乎相同。有人知道会发生什么吗?为什么JSObject.getWindow(this)退货null

我正在使用jdk。1.6_037,两个小程序都是 JApplet。

提前致谢

4

0 回答 0