EJB(Enterprise JavaBeans) 모듈이 WebSphere® Application Server에서 실행되는 여러 엔터프라이즈 애플리케이션(EAR) 프로젝트에서 공유되고 EAR 프로젝트 중 하나가 서버에서 제거된 경우 다른 EAR 프로젝트가 EJB 프로젝트에서 Bean 클래스와 같은 자원에 액세스하려면 해당 EAR 프로젝트를 다시 시작해야 합니다.
다른 EAR 프로젝트를 다시 시작하지 않으면 샘플 메시지에 표시된 것과 유사한 오류 메시지가 나타날 수 있습니다. 이 오류는 EAR을 제거할 때 서버에서 EJB 프로젝트의 JNDI(Java™ Naming and Directory Interface) 이름도 제거되므로 발생합니다.
다음은 샘플 오류 메시지입니다.
00000028 SystemOut O javax.naming.NameNotFoundException: Context: myCell/nodes/myNode/servers/server1, name: ejb/ejbs/Session20Home: First component in name Session20Home not found. [Root exception is org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0]
at com.ibm.ws.naming.jndicos.CNContextImpl.processNotFoundException(CNContextImpl.java:4730)
at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1907)
at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1862)
at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1552)
at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1354)
at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:172)
at javax.naming.InitialContext.lookup(InitialContext.java:363)
at com.ibm.ivj.ejb.runtime.AbstractAccessBean.lookupAndCacheHome(AbstractAccessBean.java:224)
at com.ibm.ivj.ejb.runtime.AbstractAccessBean.getGlobalHome(AbstractAccessBean.java:216)
at com.ibm.ivj.ejb.runtime.AbstractAccessBean.getHome(AbstractAccessBean.java:249)
at ejbs.Session20AccessBean.ejbHome(Session20AccessBean.java:50)
at ejbs.Session20AccessBean.instantiateEJB(Session20AccessBean.java:80)