Sticky user transactions configuration throws RuntimeException when migrating to JBoss EAP 5
Issue
- In JBoss EAP 4.3, I configured ClientUserTransactionServer for sticky user transactions using the following configuration in $JBOSS_HOME/server/$PROFILE/conf/jboss-service.xml:
<mbean code="org.jboss.tm.usertx.server.ClientUserTransactionService"
name="jboss:service=ClientUserTransaction"
xmbean-dd="resource:xmdesc/ClientUserTransaction-xmbean.xml">
<depends>
<mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
name="jboss:service=proxyFactory,target=ClientUserTransactionFactory">
<attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
<attribute name="JndiName">UserTransactionSessionFactory</attribute>
<attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory</attribute>
<attribute name="ClientInterceptors">
<interceptors>
<interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
<interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
</interceptors>
</attribute>
<depends optional-attribute-name="InvokerName">jboss:service=invoker,type=unified</depends>
</mbean>
</depends>
<depends optional-attribute-name="TxProxyName">
<mbean code="org.jboss.proxy.generic.ProxyFactoryHA"
name="jboss:service=proxyFactory,target=ClientUserTransaction">
<attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
<attribute name="JndiName"></attribute>
<attribute name="LoadBalancePolicy">org.jboss.ha.framework.interfaces.TransactionStickyRoundRobin</attribute>
<attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSession</attribute>
<attribute name="ClientInterceptors">
<interceptors>
<interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
<interceptor>org.jboss.proxy.ClientUserTransactionStickyInterceptor</interceptor>
<interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
</interceptors>
</attribute>
<depends optional-attribute-name="PartitionObjectName">jboss:service=${jboss.partition.name:DefaultPartition}</depends>
<depends optional-attribute-name="InvokerName">jboss:service=invoker,type=unifiedha</depends>
</mbean>
</depends>
</mbean>
In migrating to JBoss EAP 5.x, the configuration was moved to $JBOSS_HOME/server/$PROFILE/deploy/transaction-service.xml. When I apply the configuration change as done in JBoss EAP 4.x to enable sticky user transactions, the mbean ClientUserTransactionService fails now with this exception:
ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Configured: name=jboss:service=proxyFactory,target=ClientUserTransaction state=Instantiated mode=Manual requiredState=Configured
java.lang.RuntimeException: No Attribute found with name: PartitionObjectName for jboss:service=proxyFactory,target=ClientUserTransaction, attributes: [TargetName, StateString, InvokeTargetMethod, LoadBalancePolicy, ExportedInterfaces, JndiName, Name, Partition, Proxy, InvokerName, State, ClientInterceptors, ExportedInterface]
at org.jboss.system.ServiceConfigurator.configure(ServiceConfigurator.java:142)
- I want to know how to enable sticky tx for clients
Environment
- JBoss Enterprise Application Platform (EAP)
- 5.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.