| 
         
     
     | 
     | 
    
  
    | 
    如何调用部署在其他服务器上的EJB? | 
   
  
     | 
   
  
     | 
   
  
    | 
     作者:未知  来源:月光软件站  加入时间:2005-2-28 月光软件站  | 
   
  
    假设我们写了一个Session Bean,实现了一些业务方法,部署到了A服务器的sunone application server上,然后我们又写了一个JSP,并将其部署到了B服务器上的sunone application server中,该JSP将调用A服务器上那个session bean的一些业务方法,这其中需要注意两点:
  1、在使用JNDI lookup A服务器上的那个session bean的时候,需要如下配置环境变量: Properties env = new Properties(); env.put("java.naming.factory.initial", "com.sun.jndi.cosnaming.CNCtxFactory"); env.put("java.naming.provider.url", "iiop://192.168.0.34:3700"); 其中192.168.0.34就是A服务器的IP地址,当然也可以写A服务器的主机名 当然,有些文章或书上可能是这种写法,也是可以的: Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.cosnaming.CNCtxFactory"); env.put(Context.PROVIDER_URL, "iiop://192.168.0.34:3700");
  2、众所周知,远程调用需要在调用端有被调用类的stub类,对应到J2EE应用中,也就是ejb的client类,一般来说,这个类都是在部署我们的J2EE应用时自动生成的,所以需要将包含这个类的jar包放到WEB-INF/lib目录下(如果是使用一个web app来作为客户端调用EJB)以便应用服务器能找到这些stub类并正确还原出调用对象来
  
 
  | 
   
  
     | 
   
  
     相关文章:相关软件:  | 
   
   
      |