EJB项目中的Netbeans和Call Enterprise Bean

时间:2014-12-13 14:14:50

标签: java java-ee servlets netbeans netbeans-platform

您好我在Servlet中调用Enterprise Bean(来自EJB容器)(在Web容器中)。

我收到以下错误:

remote interface must be stored in separate ejb client jar in order to reference

我的项目结构如下:

======= EE APPLICATION(EJB和WEB)========

enter image description here

======= EJB CONATINER ========

enter image description here

======= WEB CONATINER ========

enter image description here

了解错误消息我的Web容器应该包含一个jar文件,其中包含我想要调用的EJB Bean的接口定义(StringProvider)。但我已经将这种依赖包含在WebContainer中。错误仍然显示出来。

==== INDEX SERVLET =====

enter image description here

==== AND STILL ERROR APPEAR =====

enter image description here

我做错了什么?任何人都可以帮助解决这个问题。我会很乐意帮助

1 个答案:

答案 0 :(得分:0)

当您创建WAR和EJB文件并将它们存储在Enterprise Archive中时,NetBeans表示,如果将远程接口与EJB本身保持在同一个项目中,则会遇到潜在问题。

NetBeans告诉您必须将远程EJB引用放入一个单独的JAR文件中,然后EJB和WAR项目都可以引用它。

如果你这样做,那么问题就会消失,你将能够正确引用EJB。

根据您的需要,您可能更容易使用本地接口并将EJB放在WAR文件中。然后,您将不必拥有包含远程接口的单独JAR文件。这显然取决于您是否需要将EJB和WAR文件分离到EAR中。