2017-12-11 5 views
0

JBoss 4.0からTomEEにプロジェクトを移動すると、エラーが発生します。EJB 2.0のプロジェクトをJBoss 4.0からTomEEに移動すると、エラーが発生する

<ejb-jar > 

<!-- Session Beans --> 
    <session > 
    <description><![CDATA[<p> RiskAssessmentRouter Manager Bean </p>]]></description> 

    <ejb-name>RiskAssessmentRouterManagerBean</ejb-name> 

    <home>com.spokesoft.component.riskassessmentrouter.ejb.RiskAssessmentRouterManagerHome</home> 
    <remote>com.spokesoft.component.riskassessmentrouter.ejb.RiskAssessmentRouterManager</remote> 
    <ejb-class>com.spokesoft.component.riskassessmentrouter.ejb.RiskAssessmentRouterManagerBean</ejb-class> 
    <session-type>Stateless</session-type> 
    <transaction-type>Container</transaction-type> 

    <env-entry> 
     <env-entry-name>daoType</env-entry-name> 
     <env-entry-type>java.lang.Integer</env-entry-type> 
     <env-entry-value><![CDATA[1]]></env-entry-value> 
    </env-entry> 
    <env-entry> 
     <env-entry-name>dbNamespace</env-entry-name> 
     <env-entry-type>java.lang.String</env-entry-type> 
     <env-entry-value><![CDATA[null]]></env-entry-value> 
    </env-entry> 

    <resource-ref > 
     <res-ref-name>SrsData</res-ref-name> 
     <res-type>javax.sql.DataSource</res-type> 
     <res-auth>Container</res-auth> 
    </resource-ref> 

    </session> 
</enterprise-beans> 

TomEEが開始 、 このエラーが表示された:で

com.spokesoft.component.service.ServiceException: Name [RiskAssessmentRouterManagerBean] is not bound in this Context. Unable to find [RiskAssessmentRouterManagerBean]. 
at com.spokesoft.component.service.RiskAssessmentRouterDelegate.handleException(RiskAssessmentRouterDelegate.java:178) 
at com.spokesoft.component.service.RiskAssessmentRouterDelegate.findServices(RiskAssessmentRouterDelegate.java:78) 
at com.spokesoft.http.servlet.service.RiskAssessmentRouterManager.initServices(RiskAssessmentRouterManager.java:345) 
at com.spokesoft.http.servlet.service.RiskAssessmentRouter.init(RiskAssessmentRouterManager.java:138) 
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280) 
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193) 
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088) 
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176) 
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) 
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) 
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633) 
at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar(TomcatWebAppBuilder.java:622) 
at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps(TomcatWebAppBuilder.java:591) 
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:855) 
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:612) 
at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:608) 
at org.apache.tomee.catalina.TomcatWebAppBuilder.checkHost(TomcatWebAppBuilder.java:1973) 
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133) 
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1374) 
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530) 
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540) 
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519) 
at java.lang.Thread.run(Thread.java:722) 

ここに私のejb-jar.xmlのいくつかの作品ですコード:

Context ctx = new InitialContext(); 

Object o = ctx.lookup("RiskAssessmentRouterManagerBean"); 

私のejb-jar.xmlの問題やその他の設定上の問題ですか、いくつかの重要な設定がありませんでしたか? 私はこの問題を解決するのに誰も助けることができますか?ありがとう、

答えて

1

JBoss 4.0で使用していたTomEEと同じJNDI名を使うことはほとんどありません。古いJ2EE仕様ではグローバルなJNDI名は標準化されていないため、ベンダー間の移行は大きな仕事になる可能性があります。 Java EE 6以降では、これらの名前が標準化されています。

WildFlyのすべてのバージョンは、アプリケーションの起動時に標準化された名前を親切に記録します。多分TomEEも同じことをします。

もしそうでなければ、Java EE仕様書の§5でそれらを読んで推論することができます。

+0

TomEEは実際に起動時に名前をログに記録します。 –

関連する問題