问题描述
我有一个服务器ejb(在服务器上部署了ofc),我想通过将其添加为依赖项,然后在main函数中调用它,在其他客户端ejb应用程序中使用它。
这是代码:
package mavensayhelloclient;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import sayhellopackage.SayhelloRemote;
public abstract class Testclient {
public static void main(String[] args) throws NamingException {
// TODO Auto-generated method stub
InitialContext cx = new InitialContext();
Object obj =
cx.lookup("mavensayhelloproject/Sayhello!sayhello
package.SayhelloRemote");
SayhelloRemote proxy = (SayhelloRemote) obj;
System.out.println(proxy.sayHello("4infoB2"));
}
}
我正在使用src / main / resources包(Maven项目)中的jndi属性文件:
java.naming.factory.initial=org.jboss.naming.remote.client.InitialContextFactory
java.naming.provider.url=http-remoting://localhost:18080
jboss.naming.client.ejb.context=true
但是我得到以下异常:
线程“主”中的异常javax.naming.NoInitialContextException:需要在环境或系统属性中或作为applet参数或在应用程序资源文件中指定类名称:java.naming.factory.initial
1楼
当您在Eclipse中遇到一些奇怪的错误时,请转到您的项目:
1)删除.settings和.profile和.classpath
2)从工作区删除项目
3)将项目导入为Maven项目