重新部署提供程序应用程序后,获取“NoSuchEJBException:Bean已取消部署”

时间:2012-02-08 22:25:48

标签: java java-ee ejb-3.0 jndi weblogic-10.x

我有2个Java EE应用程序,比如App-A和App-B,部署到同一个WebLogic 10g服务器。 App-B定期对App-A进行EJB远程调用。 App-A在App-B运行时已取消部署。在取消部署App-A之后,我得到“javax.ejb.NoSuchEJBException:Bean已经取消部署。”当App-B尝试创建远程EJB调用顶级App-A时出现异常。在我重新启动App-A之后,将远程EJB调用顶级App-A没有问题。

每当我尝试进行EJB调用时,我都会创建新的初始上下文和查找EJB,请参阅下面的代码示例。那么为什么我会得到例外。如何在不重新启动应用程序的情况下克服这个问题?

Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
env.put(Context.PROVIDER_URL, providerUrl); 
javax.naming.InitialContext initialContext = new javax.naming.InitialContext(env);
ejbRemote = (ServiceBeanRemote) initialContext.lookup(jndi);

0 个答案:

没有答案