簡體   English   中英

JBoss 7 MBean對另一個MBean的依賴

[英]JBoss 7 MBean dependency on another MBean

我正在將項目從JBoss 4.2.2遷移到JBoss 7.1.1。 我們啟動時有Configuration MBean,其他bean正在連接到此Configuration MBean以獲取一些參數。 所以jboss-service.xml的配置是這樣的:

    <mbean code="example.ConfigManager" name="exam:name=ConfigManager">        
         <attribute name="DataSourceName">java:jboss/datasources/myDS</attribute>
    </mbean>
...
    <mbean code="example.AnotherMBean" name="exam:name=AnotherMBean">
         <depends>exam:name=ConfigManager</depends>
         <attribute name="Login">system</attribute>
    </mbean>

在jboss 7中,我已經按照所需的方式(實現了start()和stop()方法)實現了MBean,但是在啟動AnotherMBean並嘗試從ConfigManager獲取信息時,我得到了:

javax.management.InstanceNotFoundException: exam:name=ConfigManager

ConfigManager沒問題,它只是在AnotherMbean之后加載。 是否可以定義MBean的加載順序?

PS不建議切換到@Startup和@Singleton,由於我們的系統要求,目前無法切換。

謝謝!

因此,未找到任何解決方法,因此將我的應用程序重新配置為使用具有@DependsOn批注的Singleton ejbs。 並在@PostConstruct方法中創建了類似

    @PostConstuct 
    private void registerToJMX() {
       private MBeanServer platformMBeanServer;
       private ObjectName objectName = null;
       try {
           objectName = new ObjectName("tms:name=BlankNotifications");
           platformMBeanServer = ManagementFactory.getPlatformMBeanServer();
           platformMBeanServer.registerMBean(this, objectName);
       } catch (Exception e) {            
       }
    }

要在JMX控制台中注冊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM