服务器是websphere,想用如下代码调用另外一台机器的ejb如下: 
public static void testJndi() 

Hashtable env = new Hashtable(); 
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); 
env.put(Context.PROVIDER_URL,"iiop://192.168.0.81:2809"); 
try 

InitialContext ctx = new InitialContext(env); 
Object obj = ctx.lookup("ejb/IProxyServiceSessionHome"); 

catch (NamingException e) 

// TODO Auto-generated catch block 
e.printStackTrace(); 

} 但是抛出异常信息,如下: 
javax.naming.CommunicationException: A communication failure occurred while attempting to obtain an initial context with the provider URL: "iiop://192.168.0.81:2809". Make sure that any bootstrap address information in the URL is correct and that the target name server is running. A bootstrap address with no port specification defaults to port 2809. Possible causes other than an incorrect bootstrap address or unavailable name server include the network environment and workstation network configuration. 
而相同的代码,如果在同一台机器调用本机上部署的ejb:"ejb/IProxyServiceSessionHome",却可以调用成功。 
我可以确定的是端口2809是rmi 远程调用接口。 
不知是websphere的配置问题,还是远程调用的代码问题。 
急等高手解决。