複数の EAR プロジェクトで共用される EJB モジュールの除去

エンタープライズ JavaBean (EJB) モジュールが WebSphere® Application Server 上で実行されている複数のエンタープライズ・アプリケーション (EAR) プロジェクト間で共用されていて、その EAR プロジェクトのいずれかをサーバーから除去する場合、その他の EAR プロジェクトがその EJB プロジェクト内の Bean クラスなどのリソースにアクセスできるようにするには、その EAR プロジェクトを再始動する必要があります。

このアクションを実行しないと、以下に示されるようなエラー・メッセージが表示される場合があります。 これらのエラーは、EAR が除去されたときに、EJB プロジェクト内の Java™ Naming and Directory Interface (JNDI) 名がサーバーから除去されるために発生します。

以下にエラー・メッセージの例を示します。

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)
    at ejbs.Session20AccessBean.foo(Session20AccessBean.java:91)

フィードバック