向各位请教远程调用另外一个应用服务器上的ejb的问题。

03-07-23 bluegirl

如何使用rmi//iiop在websphere里调用jboss里的ejb。

写了几句,怎么都报错。

哪位了解或者是写过能否告诉小妹标准写法,谢谢!

bluegirl
2003-07-23 16:48

如何在websphere中使用rmi/iiop调用另外一个应用服务器(jboss)上的ejb。

我是这样写的:

InitialContext ctx = null;

java.util.Properties props= new java.util.Properties();

props.put(javax.naming.Context.PROVIDER_URL,"iiop://localhost:1099/");

props.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY,

"com.ibm.websphere.naming.WsnInitialContextFactory");

ctx = new InitialContext(props);

Object homeObject = ctx.lookup("ejb/com/bank/RemoteTransferHome");

RemoteTransferHome piHome = (RemoteTransferHome)javax.rmi.PortableRemoteObject.narrow(homeObject, RemoteTransferHome.class);

不知道对不对?

还有在websphere里要引入那个ejb的jar包吗?我没有引入的话,wsad就报错说找不到相应的类。

谢谢!在线等待!

robbin
2003-07-23 17:01

我没有用过websphere和jboss,不过你的代码一看就不对,感觉你根本就没有理解JNDI是怎么回事。

既然你要调用jboss上的EJB,那么当然要查找JBOSS的JNDI,你的代码却到websphere上去找jboss上的EJB,怎么可能找得到?

bluegirl
2003-07-29 10:08

props.put(javax.naming.Context.PROVIDER_URL,"iiop://localhost:1099/");
props.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
ctx = new InitialContext(props);
<p>
以上几句就是找到了jboss的地址空间呀。

我的jboss在本机上。然后再找EJB的jndi。

xingj_h
2003-07-29 10:15

我不知道,