У меня есть простой EJB
package ee;
@Stateless
public class EjbBean {
public String getName(){
return "max ";
}
}
И сервлет, когда я нахожу, что мой EJB использовал имя JNDI.
package ee;
@WebServlet("/hello")
public class MyServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html;charset=utf-8");
PrintWriter pw = resp.getWriter();
{
try {
InitialContext initialContext = new InitialContext();
EjbBean ejbBean = (EjbBean)initialContext.lookup("java:global/ee/EjbBean");
pw.println(ejbBean.getName());
} catch (NamingException e) {
e.printStackTrace();
}
}
}
}
Я пытался использовать разные имена, я использовал package, и использовал без него , но постоянно получаю ошибку
javax.naming.NameNotFoundException: Name current name not found.
Почему?