Получение «NoSuchEJBException: Bean уже отменен» после повторного развертывания приложения провайдера - PullRequest
0 голосов
/ 09 февраля 2012

У меня есть 2 приложения Java EE, например, App-A и App-B, развернутые на одном сервере WebLogic 10g.App-B делает EJB удаленный вызов App-A через регулярные промежутки времени.App-A был развернут во время работы App-B.После де-развертывания App-A я получаю «javax.ejb.NoSuchEJBException: Bean уже не развернут». Исключение, когда App-B пытается сделать удаленный EJB-вызов верхним App-A.После перезапуска App-B не возникает проблем с выполнением удаленного вызова 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);
...