[JBoss JIRA] Created: (JBESB-3193) Transform of bindings-jboss-beans.xml modifies it in a manner inconsistent with purpose of file
by Ryan Hochstetler (JIRA)
Transform of bindings-jboss-beans.xml modifies it in a manner inconsistent with purpose of file
-----------------------------------------------------------------------------------------------
Key: JBESB-3193
URL: https://jira.jboss.org/jira/browse/JBESB-3193
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Deployment
Affects Versions: 4.7
Reporter: Ryan Hochstetler
The bindings-jboss-beans.xml and contained ServiceBindingManagerstore is a huge step forward in reducing the duplication of network interface and port binding information for all network-facing services within JBoss.
The JBoss ESB 4.7 installer modifies the stock bindings-jboss-beans.xml in order to take advantage of the ServiceBindingManager. jbossesb-properties.xml, and another config the name of which i cannot recall) is put through an XSLT transform to substitute the JNDI interface and port for the property org.jboss.soa.esb.jndi.server.url
Unfortunately, doing this in this manner adds a duplication of the JNDI port information to the very file which is intended to eliminate duplication of such information.
Instead:
Have the transform assign a name to the ServiceBindingMetadata bean for the naming service.
<bean name="NamingServiceBindingMetatdata" class="org.jboss.services.binding.ServiceBindingMetadata">
<property name="serviceName">jboss:service=Naming</property>
<property name="bindingName">Port</property>
<property name="port">7099</property>
<property name="description">The listening socket for the Naming service</property>
</bean>
Then, inject this value into your own configuration using a value-factory:
<bean class="org.jboss.services.binding.ServiceBindingMetadata">
<property name="serviceName">EsbPropertyService</property>
<property name="port">
<value-factory bean="NamingServiceBindingMetatdata" method="getPort" />
</property>
<property name="description">Will process jbossesb-properties using xslt to support substituion of configuration properties.</property>
<property name="serviceBindingValueSourceConfig">
<inject bean="EsbPropertyServiceXSLTConfig"/>
</property>
</bean>
This is the quick-fix solution. There's probably an even better way to do this, but I'm out of time to figure it out.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira