Servlets @EJB注释没有';不能在Servlet中工作

Servlets @EJB注释没有';不能在Servlet中工作,servlets,ejb-3.0,jndi,websphere-7,myeclipse,Servlets,Ejb 3.0,Jndi,Websphere 7,Myeclipse,我正在使用WebSphere7.0ApplicationServer,希望在LoginServlet中使用@EJB-注释。当我直接在MyEclipse(BlueEdition 8.6)上部署应用程序时,一切正常,注释也得到了解决 但是,当我使用MyEclipse中的导出功能创建EAR文件并将其手动部署到Websphere Server上时,@EJB注释没有解析,因此在访问引用时,我会得到一个NullpointerException 然后,我在Servlet的doGet方法中尝试了jndi查找,而

我正在使用WebSphere7.0ApplicationServer,希望在LoginServlet中使用
@EJB
-注释。当我直接在MyEclipse(BlueEdition 8.6)上部署应用程序时,一切正常,注释也得到了解决

但是,当我使用MyEclipse中的导出功能创建EAR文件并将其手动部署到Websphere Server上时,
@EJB
注释没有解析,因此在访问引用时,我会得到一个
NullpointerException

然后,我在Servlet的doGet方法中尝试了jndi查找,而不是@ejb注释,并且在我将查找放入init方法时,一切都很好。但是在Websphere上手动部署时,jndi查找在init方法中不起作用


您是否知道myEclipse部署和ear手动部署之间有什么区别,以便它只适用于myEclipse部署?

最好看看这两个ear文件的结构。一种可能是,任何ejb jar模块都不位于ear的根目录中,而是位于/lib文件夹中,因此它们不会被识别为ejb模块?导出的.ear文件的结构如下:-target-META-INF-lib-ZWRWEB.war-ZWRService.jar-pom.xml eclipse部署的ear文件夹的结构是:-target-META-INF-lib-ZWRService.jar(已解包-作为文件夹)-ZWRWEB.war(已解包-作为文件夹)-pom.xml我发现在Eclipse部署的Ear文件夹中的ZWRWeb.war-Folder的web INF文件夹中有一个web_merged.xml文件