意義

2014-10-08 36 views
0

JBoss的4/5的MBean如NamingAlias在XML定義如下意義

<mbean code="org.jboss.naming.NamingAlias" name=":service=NamingAlias,fromName=queue/original"> 
    <attribute name="ToName">queue/linked</attribute> 
    <attribute name="FromName">queue/original</attribute> 
</mbean> 

注重屬性name=":service=NamingAlias,fromName=queue/original我看到的參數servicefromName

依照指示操作,在這裏創建一個自定義的MBean:

https://developer.jboss.org/wiki/ExampleHelloWorldService

用於創建的MBean的XML配置是

<server> 
    <mbean code="com.acme.HelloWorldService" name="acme.com:service=HelloWorld"> 
    <attribute name="Message">Hello World</attribute> 
    </mbean> 
</server> 

service中的name屬性指定我注意到了。

服務對所有的豆子都是強制性的嗎?如何添加附加參數,如fromName?這些值是否可以在實現MBean的類中使用或者是那些強制的?

回答

1

名稱屬性可以是任何有效的(和唯一的)JMX ObjectName。關鍵和價值本身除了對開發者的主觀意義之外沒有任何特殊的意義。

在第一個例子中,對象名未指定域(該值到結腸的左側),這樣在MBeanServer假定缺省域,在這種情況下將是的JBoss所以名義上:

:service=NamingAlias,fromName=queue/original == jboss:service=NamingAlias,fromName=queue/original 

ObjectName(及其嵌入的域和鍵/值)可以在類中使用。在標準的JMX中,通常會使impl實現MBeanRegistration,它在bean註冊時注入MBeanServer和ObjectName。但是,您引用的示例是一個專門的JBoss ServiceMBean,它會自動執行此操作,並且您的實現將在名爲serviceName的字段中存儲ObjectName。