我有一个带有两个小程序的 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。
提前致谢