[英]Eclipse Luna - Jboss 7 Servlet & JPA app servlet does not start
我有一個基於Maven的JBoss AS 7和Eclipse Luna項目。 我正在使用帶注釋的servlet,並且有一個非常簡單的JPA實體和DAO。
當我通過Eclipse部署時,該servlet無法啟動。
如果我通過JBOss Web界面mvn package
和部署,則servlet會部署。
使用eclipse時,將部署JPA類並設置了持久性內容,但從servlet中我什么也沒得到。
除了persistence.xml之外,我沒有任何XML文件,只是這樣的帶注釋的servlet:
@WebServlet(urlPatterns = {"/simple"}, loadOnStartup=1)
public class EntityServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@EJB EntityDao ed;
public EntityServlet() {
System.err.println("Starting servlet");
System.err.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
}
public void setEntityDao(EntityDao e){
ed = e;
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out=response.getWriter();
out.print("<html><body>");
out.print("<h3>Hello Servlet</h3><p>");
out.print(ed.addNamedEntity("ADSF"));
out.print("</p>");
out.print("<p>" + ed.getAllNamedEntities() + "</p></body></html>");
}
}
悲傷,發現了問題。
我注意到我的測試用例沒有編譯,所以我開始進行追蹤,發現.project文件中的Java構建器不再存在(不知道它到底在哪里)。
要點是您必須添加:
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
如果確實缺少,請在buildSpec部分中將其添加到.project文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.