【问题标题】:WAS 8.5 The enterprise bean in the ejb.jar module has no EJB type defined. (ejb 2.x -> 3.x)WAS 8.5 ejb.jar 模块中的企业 bean 没有定义 EJB 类型。 (ejb 2.x -> 3.x)
【发布时间】:2013-10-30 12:09:01
【问题描述】:

我正在将我们的部署描述符从 EJB 2.x 迁移到 EJB 3.x 版。目前我收到以下错误:

[exec]   [wsadmin] com.ibm.ejs.container.EJBConfigurationException: 
com.ibm.ejs.container.EJBConfigurationException: 
The MyBean enterprise bean in the ejb.jar module has no EJB type defined.

现在根据http://docs.oracle.com/cd/A97335_02/apps.102/a83725/xml1.htm,这是我用于企业 bean 定义的 ejb-jar.xml 元素:

<enterprise-beans>
    <session id="MyBean">
        <ejb-name>MyBean</ejb-name>
        <ejb-class>foo.MyBean</ejb-class>
        <env-entry>
            <description>
            </description>
            <env-entry-name>bootloader.config</env-entry-name>
            <env-entry-type>java.lang.String</env-entry-type>
            <env-entry-value>my_config</env-entry-value>
        </env-entry>
    </session>
</enterprise-beans>

上面的元素“session”应该定义bean类型,它是session,因为它实现了javax.ejb.SessionBean接口。

我在这里有什么遗漏吗?还是在迁移那些部署描述符时我也必须调整 bean 类本身?

提前致以最诚挚的问候和感谢

【问题讨论】:

    标签: jakarta-ee ejb websphere


    【解决方案1】:

    好的,我想通了。我忘记了 websphere 特定的部署描述符,现在看起来像这样:

    <?xml version="1.0" encoding="UTF-8"?>
    <ejb-jar-bnd xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     
                 xmlns="http://websphere.ibm.com/xml/ns/javaee" version="1.1">
    
         <session name="MyBean" simple-binding-name="MyBean">
          <resource-ref name="jms/foo/" binding-name="jms/foo"/>
         </session>
    
    </ejb-jar-bnd>
    

    现在我可以部署应用程序了。

    【讨论】:

    • 我已将此设置为接受的答案,因为它在问题发生时解决了我的问题。但是,可能还有其他更一般的原因导致此问题发生,因此请随意添加更一般的答案(例如可能是什么的清单),我会将其切换为已接受的答案,因为我基本上只是说“它有一些问题与您必须自己阅读的部署描​​述符格式有关)。
    【解决方案2】:

    我有同样的错误。

    我的解决方法是在类名上方添加“@Stateless”注释:

    @Stateless
    public class XxxxBean implements YyyyService
    

    我意识到这是一个旧线程,但我希望这可以帮助某人:)。

    【讨论】:

    • 不幸的是它不正确。您需要在 ejb-jar.xml 中定义“@Stateless”或创建 条目。两者都不是。
    猜你喜欢
    • 2010-09-09
    • 1970-01-01
    • 1970-01-01
    • 2017-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多