我们有一个使用 JDeveloper 11g (11.1.2.4.0) 编程的 ADF Web 应用程序,该应用程序是从 10g (10.1.3.5.0) 项目迁移过来的
在应用程序中,有时我们需要调用位于 public_html/applet 文件夹中的 Java Applet。这些 jar 文件显示在 Application Navigator 中 ViewController 的 Web-Content 选项卡中,就像在 10g 中一样。
小程序标签如下所示:
<applet height="100" width="100"
code="applet.SetupApplet" archive="applet/SSetupApplet.jar">
<param name="debug" value="true"/>
我还尝试使用 Java 部署小程序脚本调用小程序
<trh:script source="http://java.com/js/deployJava.js"></trh:script>
<trh:script>
var attributes = {code:'applet.SetupApplet',
archive:'applet/SSetupApplet.jar'};
var parameters = {} ;
var version = '1.6' ;
deployJava.runApplet(attributes, parameters, version);
</trh:script>
当我导航到具有此标记的 login.jspx 页面时,它会弹出 Java 控制台,但实际上并不运行小程序(或显示允许使用小程序的提示)。相反,小程序会显示错误,并且应用程序错误显示 NullPointerException
; Java 控制台中没有显示错误。我已经仔细检查了路径并且它是正确的(如果路径不正确,我会收到 ClassNotFoundException
)。在应用程序服务器日志中,我看到以下错误:
<Warning> <Socket> <BEA-000449> <Closing socket as no data read from it on IPADDRESS during the configured idle timeout of 5 secs>
我创建了一个普通的 .jsp 文件,该文件位于 applet 文件夹中的 ADF Faces 上下文之外。使用相同的小程序标签导航到它确实可以运行 Java 小程序,而不会出现套接字错误。相同的代码在 10g 中运行良好。
我有什么遗漏的吗?
最佳答案
查看 Frank 的文章 http://www.oracle.com/technetwork/developer-tools/adf/learnmore/71-adf-to-applet-communication-307672.pdf 。他解释了如何嵌入小程序,并在文章末尾解释了如何配置浏览器。
关于java - 嵌入式 Java Applet 在 JSPX 页面中返回 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19554565/