我建立了一个包含两个模块的企业应用程序项目:EJB项目和Web项目 Web项目包含一个servlet,我想从EJB Project中注入一个EJB 前者看起来像这样:
@WebServlet("/OutputServlet")
public class OutputServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@EJB
UserEJB userejb;
.
.
.
后者是这样的:
@Stateless
@LocalBean
public class UserEJB {
/**
* Default constructor.
*/
public UserEJB() {
// TODO Auto-generated constructor stub
}
.
.
.
行UserEJB userejb;
中的“UserEJB”部分在eclipse中被标记为错误,并显示UserEJB无法解析为类型的消息。
值得一提的是,我在Wildfly 10.0上运行了所有这些
以下是Application Project的application.xml:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd" id="Application_ID"
version="7">
<display-name>SecondTest</display-name>
<module>
<ejb>SecondEJB.jar</ejb>
</module>
<module>
<web>
<web-uri>SecondWeb.war</web-uri>
<context-root>SecondWeb</context-root>
</web>
</module>
</application>
答案 0 :(得分:0)
显然,eclipse不会自动将EJB项目添加到构建路径中。这样做可以解决问题