如何调用局域网另外一台主机的EJB
如题
//客户端使用JNDI访问命名服务或目录服务
Properties props = new Properties();
//设置JNDI驱动类名,指定InitialContext工厂
props.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
//指定命名服务提供者及提供命名服务的主机、端口号
props.setProperty("java.naming.provider.url","192.168.0.101:1099");
//以上设置应用服务器上下文信息
Context context = new InitialContext(props);
SelectPrimeRemote cr = (SelectPrimeRemote)context.lookup("SelectPrime/remote");
假设在192.168.0.101的主机有个EJB项目selectPrime,SelectPrime为实现类;
可我这样调用会出现 javax.naming.CommunicationException异常。(如果把IP改为localhost是可以的)
应该怎样指定url EJB --------------------编程问答-------------------- jboss 是这样的
props.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "ip:1099");
props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
如果192.168.0.101是你部署ejb的
然后你的jboss启动要这样的
%JBOSS_HOME%\bin\run.bat -b 192.168.0.101
补充:Java , Java EE