下面两种代码为什么都能得到相同的效果呢
InitialContext ctx = new InitialContext();和
Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
InitialContext ctx = new InitialContext(props);这说明new InitialContext()能从某个地方获取这个信息,首先我发现在工程里面有一个jndi.properties文件,里面有:
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost:1099
删除该内容,然后以上面的方式运行,还是没问题!
下面准备部署一个简单的EJB试试看:
package server;
import javax.ejb.Remote;
@Remote
public interface Echo ...{
public String echotext();
}
package server;
import javax.ejb.Stateless;
import server.Echo;

public @Stateless class EchoBean implements Echo ...{

public String echotext() ...{
return "testing remote EJB3";
}
}
待续
本文探讨了Java Naming and Directory Interface (JNDI) 的两种配置方式,并展示了如何通过这两种方式成功创建InitialContext实例。此外,还提供了一个简单的EJB远程接口和实现类的例子。
1725

被折叠的 条评论
为什么被折叠?



