现在的位置: 首页 > 综合 > 正文

如何实现JNDI远程调用SessionBean(EJB3)

2012年10月12日 ⁄ 综合 ⁄ 共 822字 ⁄ 字号 评论关闭

1. 需要两个包:jbossall-client.jar,jboss-aspect-library-jdk50.jar

2. 将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

3. 首先,需要读取上述属性文件,得到Properties这个对象:

 Properties prop  = new Properties();
 ResourceBundle resource = ResourceBundle.getBundle("jndi");

prop.put("java.naming.factory.initial", resource.getString("java.naming.factory.initial"));
prop.put("java.naming.factory.url.pkgs", resource.getString("java.naming.factory.url.pkgs"));
prop.put("java.naming.provider.url", resource.getString("java.naming.provider.url"));

return prop;

4. 查找SessionBean的接口

Context context =new InitialContext(prop); // prop可以通过上面的方式取得
return context.lookup(Class.getName); // Class.getName就是SessionBean的接口的名字,包括包名

抱歉!评论已关闭.