Follow-up on a brief discussion that came up on the jboss-as list a few weeks ago.
ServiceBindingManager is an AS service that provides support for preventing port conflicts
if 2 AS instances are started on the same machine and the ASs aren't bound to
different interfaces. I've been having to redo the SBM to allow it to deal with pojo
services, since before it could only work with mbeans. If you're interested in details
on that, see
http://wiki.jboss.org/wiki/AS5ServiceBindingManager and the forum thread
linked at the top of that wiki.
I can now get SBM working with all services that deploy in the AS, except the
TransactionManager -- specifically its recovery manager, which is configured via
conf/jbossjta-properties.xml. It appears the TM internally parses that file, so the
existing SBM integration hooks won't work.
Some possibilities:
1) Expose some property on the "TransactionManager" bean that trumps the value
that comes out of jbossjta-properties.xml. The microcontainer can then use the SBM as the
source of the correct value.
2) Have whatever parses jbossjta-properties.xml support system property substitution,
e.g.
<property name="com.arjuna.ats.arjuna.recovery.recoveryPort"
value="${jbossts.recovery.port:4712}"/>
We'd then deploy a bean along with the SBM that sets the proper system property.
Hacky, and leaves the problem of ensuring the SBM deploys before the TransactionManager.
3) If the location where this jbossjta-properties.xml comes from can be made configurable
on the TransactionManager bean, we can use a hack like we use on the Tomcat server.xml
file. The SBM is given the location of the base file, does an XSL Transform on it to put
in the correct values, saves the result as a temp file, and the service is told to use the
temp file for its configuration. A long-standing hack whose usage I for sure would hate to
see expanded.
Any thoughts?
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4169971#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...