我的ejb,它的客户端装在耳朵里,它部署在was7上 现在我需要用junit测试它,所以我创建了一个独立的java应用程序,我添加了ejb客户端生成的jar,并在制作实际测试用例之前尝试调用它:
@EJB private static ConfiguratorIDA conf;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
conf.setupIsbanDataAccess();
} catch (NegocioException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我的运行和我的ejb一样,但是当我运行我的应用程序时,我在conf.setupIsbanDataAccess()上得到NullPointerException;
有谁知道如何在独立的Java应用程序中调用ejb? 提前谢谢。
答案 0 :(得分:1)
注入(包括@EJB
)仅在您使用application client container时有效,因为容器需要有机会在运行main方法之前执行注入。如果您真的想要使用独立的JVM,那么您需要在类路径中包含EJB thinclient并使用JNDI手动查找EJB,而不是尝试使用注入。
答案 1 :(得分:0)