【问题标题】:How to MBean depends EJBs in JBoss 7如何 MBean 依赖于 JBoss 7 中的 EJB
【发布时间】:2025-08-13 08:45:02
【问题描述】:

我在 Jboss 7 中使用 MBean。Mbean 需要在启动时调用一些 EJB,但我无法控制启动 EJB 和 MBean 的顺序。在 Jboss 4 中,我可以通过在 jboss-service.xml 中使用带有依赖标记的 MBean 来做到这一点。但是在 Jboss 7 中这种方式不再起作用了。

<mbean code="com.mycompany.vms.adapter.connector.SourceConnector" name="mycompany:service=SourceConnector,source=SILTERRA" xmbean-dd="META-INF/SILTERRA-SourceConnector-xmbean.xml">
    <depends>jboss.j2ee:jndiName=mycompany/vms/ImportService,service=EJB</depends>
    <depends>jboss.j2ee:service=EJB,jndiName=mycompany/vms/EJBCommandService</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/ReceiverQueue</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/DMuxerQueue</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/ChannelProcessorQueue</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/TransactionProcessorQueue</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/SynchronizerQueue</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/CommandQueue</depends>
    <depends>jboss.mq.destination:service=Topic,name=vms/SystemAlertsTopic</depends>
    <depends>jboss.mq.destination:service=Queue,name=vms/LotIssueQueue</depends>
</mbean>

请任何人帮助我。在 JBoss7 上无论如何都可以做到这一点?

【问题讨论】:

  • 你试过here提到的解决方案了吗?它为您提供了有关如何将 MXBeans 从 JBoss 4.X 迁移到 JBoss 7 的解决方案。
  • 你能解决这个@duykaka 吗?

标签: jakarta-ee jboss7.x ejb-3.0 mbeans


【解决方案1】:

您可以将您的 MBean 转换为 @Singleton 触发 @Startup,在其上注入其 EJB 依赖项。

您可以找到更多信息herehere

【讨论】:

    【解决方案2】:

    您可以创建一个jboss-ejb3.xml 文件并在其中列出您的企业 bean 以订购您的 ejb 的启动。

    更多细节可以在这里找到 - https://docs.jboss.org/author/display/AS71/jboss-ejb3.xml+Reference

    【讨论】:

      最近更新 更多