我的TestBean
@Stateless
public class TestBean implements TestLocal {
public String getMessage(String name) {
return "Test "+ name;
}
}
我的界面
@Local
public interface TestLocal {
public String getMessage(String name);
}
我在这里使用它
@EJB
private TestLocal testLocal;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String result;=testLocal.getMessage("ASDASD");
req.getSession().setAttribute("Test1",result);
RequestDispatcher rd=req.getRequestDispatcher("Index.jsp");
rd.forward(req,resp);
}
我在结果行上得到NullPointerException。
答案 0 :(得分:-2)
EJB仅在托管bean中注入。当bean由一些注入容器管理时,例如通过JSF自己的@ManagedBean,CDI的@Named等,可以管理bean。您甚至可以在另一个EJB中注入EJB。您不能在非托管类中注入EJB。 我没有通过注射容器将您的课程视为管理课程。