2013-12-19 42 views
0

我正在使用weblogic服務器。我想知道是否在JNDI上下文中綁定了一個對象之後,可以對此對象進行遠程調用(在遠程JVM中執行它)。遠程JVM內的遠程對象調用

在我的本地JVM:

Context ctx = null; 
Hashtable<String, String> env = new Hashtable<String, String>(); 
env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); 
env.put(Context.PROVIDER_URL,"t3://remoteServer:7001/); 
env.put(Context.SECURITY_PRINCIPAL,""); 
env.put(Context.SECURITY_CREDENTIALS,""); 

try { 
    ctx = new InitialContext(env); 
    MyObjectImpl obj1 = new MyObjectImpl(); 
    ctx.bind("jndi_name", obj1); 
    //Now my object can be retrieve from the JNDI context under "jndi_name" 


    MyObjectImpl obj2 = (MyObjectImpl)ctx.lookup("jndi_name"); //lookup of object 
    System.out.println(obj2.method(1,2)); //call 
}catch (Exception e) { 
    // a failure occurred 
} 

但這一呼聲在客戶端JVM在本地完成,而不是在遠程JVM。

有什麼辦法可以解決這個問題嗎?

問候,

回答