【发布时间】:2013-08-05 13:24:38
【问题描述】:
这是一个示例,其中我有两个具有相同名称的 <mbean> 部分,但这些部分中的属性不同,我想合并这两个 <mbean> 部分并且重复的属性必须替换为最新的被添加到<mbean> 部分的底部。
<mbean code="org.jboss.naming.JNDIBindingServiceMgr"
name="abc.myconfig.jndi:name=myconfigAppPartitionJNDI">
<attribute name="BindingsConfig" serialDataType="jbxb">
<jndi:bindings
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jndi="urn:jboss:jndi-binding-service:1.0"
xs:schemaLocation="urn:jboss:jndi-binding-service:1.0 resource:jndi-binding-service_1_0.xsd">
<jndi:binding
name="myabc/myconfig/myservice/myabcservice">
<jndi:value type="java.lang.String">
old-value
</jndi:value>
</jndi:binding>
<jndi:binding name="myabc/myconfig/myabcdefService/myabcdefServiceUrl">
<jndi:value type="java.lang.String">
@myabcdefService.myabcdefServiceUrl@
</jndi:value>
</jndi:binding>
</jndi:bindings>
</attribute>
</mbean>
<mbean code="org.jboss.naming.JNDIBindingServiceMgr"
name="abc.myconfig.jndi:name=myconfigAppPartitionJNDI">
<attribute name="BindingsConfig" serialDataType="jbxb">
<jndi:bindings
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jndi="urn:jboss:jndi-binding-service:1.0"
xs:schemaLocation="urn:jboss:jndi-binding-service:1.0 resource:jndi-binding-service_1_0.xsd">
<jndi:binding
name="myabc/myconfig/myservice/myabcservice">
<jndi:value type="java.lang.String">
new-value
</jndi:value>
</jndi:binding>
<jndi:binding name="myabc/myconfig/myabcdefService/myabcdefServiceUrl">
<jndi:value type="java.lang.String">
@myabcdefService.myabcdefServiceUrl@
</jndi:value>
</jndi:binding>
<jndi:binding name="myabc/myconfig/myabcdefService/myabcFileNet">
<jndi:value type="java.lang.String">
@myabcdefService.myabcFileNet@
</jndi:value>
</jndi:binding>
</jndi:bindings>
</attribute>
</mbean>
预期输出为:
<mbean code="org.jboss.naming.JNDIBindingServiceMgr"
name="abc.myconfig.jndi:name=myconfigAppPartitionJNDI">
<attribute name="BindingsConfig" serialDataType="jbxb">
<jndi:bindings
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jndi="urn:jboss:jndi-binding-service:1.0"
xs:schemaLocation="urn:jboss:jndi-binding-service:1.0 resource:jndi-binding-service_1_0.xsd">
<jndi:binding name="myabc/myconfig/myabcdefService/myabcdefServiceUrl">
<jndi:value type="java.lang.String">
@myabcdefService.myabcdefServiceUrl@
</jndi:value>
</jndi:binding>
<jndi:binding
name="myabc/myconfig/myservice/myabcservice">
<jndi:value type="java.lang.String">
new-value
</jndi:value>
</jndi:binding>
<jndi:binding name="myabc/myconfig/myabcdefService/myabcFileNet">
<jndi:value type="java.lang.String">
@myabcdefService.myabcFileNet@
</jndi:value>
</jndi:binding>
</jndi:bindings>
</attribute>
</mbean>
【问题讨论】:
标签: xml replace xslt-1.0 mbeans