BPEL 中的 Java 嵌入无法在应用程序服务器上部署
我在 Bpel 中使用 Java Embedding 来调用 shell 命令。使用的工具是Jdeveloper 11.1.1.4.0。问题是代码在 IDE 上编译正常,但是在部署到 Weblogic 时失败并出现错误: java.lang.RuntimeException: 无法编译项目的 execlet。服务器日志中的潜在错误是“未知来源”。
java代码是:
try {
Runtime rt = Runtime.getRuntime();
Process proc= rt.exec("ls -al");
System.out.println("***Executed BPEL Test***");
} catch (IOException e) {
e.printStackTrace();
}
在 Bpel 源中添加了以下导入:
<bpelx:exec import="java.io.*"/>
<bpelx:exec import="java.lang.*"/>
<bpelx:exec import="java.util.*"/>
知道这段代码出了什么问题吗?请注意像 System.out.println("Hello there, World"); 这样的简单代码在应用程序服务器上部署正常。
I use Java Embedding in Bpel in order to invoke shell commands. Tool used is Jdeveloper 11.1.1.4.0. The problem is that code is compiled OK on IDE, but when deploying to Weblogic it fails with error: java.lang.RuntimeException: failed to compile execlets of project. Underlying error in server log is "unknown source".
The java code is:
try {
Runtime rt = Runtime.getRuntime();
Process proc= rt.exec("ls -al");
System.out.println("***Executed BPEL Test***");
} catch (IOException e) {
e.printStackTrace();
}
In Bpel source is added following imports:
<bpelx:exec import="java.io.*"/>
<bpelx:exec import="java.lang.*"/>
<bpelx:exec import="java.util.*"/>
Any idea what went wrong in this code? Notice that simple code like System.out.println("Hello there, World"); deploys OK on app server.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对 catch 表达式的这个小修正解决了这个问题:
现在 Bpel 可以很好地部署到应用程序服务器 (Weblogic)。由于有问题的代码在 Java 中编译正常,因此这似乎是针对此特定情况的特定问题。
This small correction to catch expression has fixed the issue:
Now Bpel deploys nicely to the application server (Weblogic). Since the problematic code compiles OK in Java, it seems to be a specific problem for this particualr case.