-
1. Re: Problem with JMS XA client sending msg to a remote serve
jhd Nov 4, 2009 1:46 PM (in response to jhd)Here is my jboss-esb.xml config:
<?xml version="1.0"?> <jbossesb parameterReloadSecs="5" xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" > <providers> <jms-jca-provider name="LocalJBossMessagingProvider" connection-factory="ConnectionFactory"> <jms-bus busid="TbotJmsGatewayChannel"> <jms-message-filter dest-name="queue/TbotJmsGateway" dest-type="QUEUE" transacted="true" /> </jms-bus> <jms-bus busid="TbotJmsEsbChannel"> <jms-message-filter dest-name="queue/TbotJmsEsb" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcJmsGatewayChannel"> <jms-message-filter dest-name="queue/BillingCenterJmsGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcJmsEsbChannel"> <jms-message-filter dest-name="queue/BillingCenterJmsEsb" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TosSqlEsbChannel"> <jms-message-filter dest-type="QUEUE" dest-name="queue/TosSqlEsb" /> </jms-bus> <jms-bus busid="GpSqlEsbChannel"> <jms-message-filter dest-type="QUEUE" dest-name="queue/GpSqlEsb" /> </jms-bus> <jms-bus busid="FaultToEsbChannel"> <jms-message-filter dest-name="queue/FaultToESB" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="FaultToGatewayChannel"> <jms-message-filter dest-name="queue/FaultToGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="MessageRouterESBChannel"> <jms-message-filter dest-name="queue/MessageRouter" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="MessageRouterGWChannel"> <jms-message-filter dest-name="queue/MessageRouterGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotCheckRequestedBcESBChannel"> <jms-message-filter dest-name="queue/TbotCheckRequestedBc" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotCheckRequestedBcGWChannel"> <jms-message-filter dest-name="queue/TbotCheckRequestedBcGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcAgencyCreatedUpdatedESBChannel"> <jms-message-filter dest-name="queue/BcAgencyCreatedUpdated" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcAgencyCreatedUpdatedGWChannel"> <jms-message-filter dest-name="queue/BcAgencyCreatedUpdatedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyCreatedESBChannel"> <jms-message-filter dest-name="queue/BcPolicyCreated" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyCreatedGWChannel"> <jms-message-filter dest-name="queue/BcPolicyCreatedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyIssuedESBChannel"> <jms-message-filter dest-name="queue/BcPolicyIssued" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyIssuedGWChannel"> <jms-message-filter dest-name="queue/BcPolicyIssuedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyReturnedESBChannel"> <jms-message-filter dest-name="queue/BcPolicyReturned" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyReturnedGWChannel"> <jms-message-filter dest-name="queue/BcPolicyReturnedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyRejectedESBChannel"> <jms-message-filter dest-name="queue/BcPolicyRejected" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyRejectedGWChannel"> <jms-message-filter dest-name="queue/BcPolicyRejectedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCreatedAckESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyCreatedAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCreatedAckGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyCreatedAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyIssuedAckESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyIssuedAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyIssuedAckGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyIssuedAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyReturnedAckESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyReturnedAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyReturnedAckGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyReturnedAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyRejectedAckESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyRejectedAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyRejectedAckGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyRejectedAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotInvoicePastDueESBChannel"> <jms-message-filter dest-name="queue/TbotInvoicePastDue" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotInvoicePastDueGWChannel"> <jms-message-filter dest-name="queue/TbotInvoicePastDueGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyCashReceivedESBChannel"> <jms-message-filter dest-name="queue/BcPolicyCashReceived" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyCashReceivedGWChannel"> <jms-message-filter dest-name="queue/BcPolicyCashReceivedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCashReceivedAckESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyCashReceivedAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCashReceivedAckGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyCashReceivedAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="GpCheckRequestedTbotESBChannel"> <jms-message-filter dest-name="queue/GpCheckRequestedTbot" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="GpCheckRequestedTbotGWChannel"> <jms-message-filter dest-name="queue/GpCheckRequestedTbotGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="GpCommissionCheckRequestedTbotESBChannel"> <jms-message-filter dest-name="queue/GpCommissionCheckRequestedTbot" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="GpCommissionCheckRequestedTbotGWChannel"> <jms-message-filter dest-name="queue/GpCommissionCheckRequestedTbotGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcCheckUpdatedESBChannel"> <jms-message-filter dest-name="queue/BcCheckUpdated" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcCheckUpdatedGWChannel"> <jms-message-filter dest-name="queue/BcCheckUpdatedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotCheckUpdatedESBChannel"> <jms-message-filter dest-name="queue/TbotCheckUpdated" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotCheckUpdatedGWChannel"> <jms-message-filter dest-name="queue/TbotCheckUpdatedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotCommissionStatementRequestedGWChannel"> <jms-message-filter dest-name="queue/TbotCommissionStatementRequestedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotCommissionStatementRequestedESBChannel"> <jms-message-filter dest-name="queue/TbotCommissionStatementRequested" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCancelRequestedESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyCancelRequested" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCancelRequestedGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyCancelRequestedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyCancelledGWChannel"> <jms-message-filter dest-name="queue/BcPolicyCancelledGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyCancelledESBChannel"> <jms-message-filter dest-name="queue/BcPolicyCancelled" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCancelledAckESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyCancelledAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyCancelledAckGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyCancelledAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyReinstateRequestedESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyReinstateRequested" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyReinstateRequestedGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyReinstateRequestedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyReinstatedESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyReinstated" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyReinstatedGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyReinstatedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyReinstatedAckESBChannel"> <jms-message-filter dest-name="queue/BcPolicyReinstatedAck" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="BcPolicyReinstatedAckGWChannel"> <jms-message-filter dest-name="queue/BcPolicyReinstatedAckGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyIssueRequestedGWChannel"> <jms-message-filter dest-name="queue/TbotPolicyIssueRequestedGateway" dest-type="QUEUE" /> </jms-bus> <jms-bus busid="TbotPolicyIssueRequestedESBChannel"> <jms-message-filter dest-name="queue/TbotPolicyIssueRequestedESB" dest-type="QUEUE" /> </jms-bus> </jms-jca-provider> <sql-provider name="TwiatdwSqlProvider" url="jdbc:jtds:sqlserver://wdbdev05:1433/TWIATDW;tds=8.0;prepareSQL=2;sendStringParametersAsUnicode=false;domain=twia.org;instance=dev" driver="net.sourceforge.jtds.jdbc.Driver" username="TBOT_User" password="Jg58zuTw" > <sql-bus busid="TosSqlChannel"> <sql-message-filter tablename="ESB_MESSAGE" status-column="STATUS" message-column="message" message-id-column="PK_ESB_MESSAGE" order-by="DATE_CREATED" insert-timestamp-column="PROCESS_TIMESTAMP" post-delete="false" error-delete="false" where-condition="HOST_NAME = 'twia506'"/> </sql-bus> </sql-provider> <sql-provider name="WindSqlProvider" url="jdbc:jtds:sqlserver://waccdev-vmlag:1433/WIND;tds=8.0;prepareSQL=2;sendStringParametersAsUnicode=false" driver="net.sourceforge.jtds.jdbc.Driver" username="sa" password="SQLServer2K5" > <sql-bus busid="GpSqlChannel"> <sql-message-filter tablename="ESB_MESSAGE" status-column="STATUS" message-column="message" message-id-column="PK_ESB_MESSAGE" order-by="DATE_CREATED" insert-timestamp-column="PROCESS_TIMESTAMP" post-delete="false" error-delete="false" where-condition="BUS_HOST_NAME = '172.16.2.203'"/> </sql-bus> </sql-provider> </providers> <services> <service name="ExceptionHandlerService" category="ExceptionHandlerCategory" description="Central service for handling exceptions on the ESB"> <listeners> <jms-listener name="FaultToGatewayListener" busidref="FaultToGatewayChannel" is-gateway="true" /> <jms-listener name="FaultToEsbListener" busidref="FaultToEsbChannel" /> </listeners> <actions mep="OneWay"> <action name="ExceptionHandlerAction" class="org.twia.esb.action.exception.ExceptionHandlerAction" /> </actions> </service> <service name="TosEnricherService" category="gateway" description="TosEnricherService"> <listeners> <sql-listener name="TosSqlListenerGateway" busidref="TosSqlChannel" is-gateway="true" /> <jms-listener name="TosSqlEsbListener" busidref="TosSqlEsbChannel" /> </listeners> <actions mep="OneWay"> <action name="TosEnricher" class="org.twia.esb.action.TosEnricher" process="process"></action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TosEnricherStaticRouter" class="org.jboss.soa.esb.actions.StaticRouter" process="process"> <property name="destinations"> <route-to destination-name="MessageRouterService" service-category="MessageRouterService" service-name="MessageRouterService" /> </property> </action> </actions> </service> <service name="GpEnricherService" category="gateway" description="GpEnricherService"> <listeners> <sql-listener name="GpSqlListenerGateway" busidref="GpSqlChannel" is-gateway="true" /> <jms-listener name="GpSqlEsbListener" busidref="GpSqlEsbChannel" /> </listeners> <actions mep="OneWay"> <action name="TosEnricher" class="org.twia.esb.action.TosEnricher" process="process"></action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="GpEnricherStaticRouter" class="org.jboss.soa.esb.actions.StaticRouter" process="process"> <property name="destinations"> <route-to destination-name="MessageRouterService" service-category="MessageRouterService" service-name="MessageRouterService" /> </property> </action> </actions> </service> <service name="TbotJmsEnricherService" category="gateway" description="listens to TBOT JMS gateway, enriches message, routes"> <listeners> <jms-listener busidref="TbotJmsGatewayChannel" is-gateway="true" name="TbotJmsGatewayListener" /> <jms-listener busidref="TbotJmsEsbChannel" is-gateway="false" name="TbotJmsEsbListener" /> </listeners> <actions mep="OneWay"> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/MessageRouterGateway" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="BcJmsEnricherService" category="gateway" description="listens to BillingCenter JMS gateway, enriches message, routes"> <listeners> <jms-listener name="BcJmsGatewayListener" busidref="BcJmsGatewayChannel" is-gateway="true" /> <jms-listener name="BcJmsEsbListener" busidref="BcJmsEsbChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="BcJmsStaticRouter" class="org.jboss.soa.esb.actions.StaticRouter" process="process"> <property name="destinations"> <route-to destination-name="MessageRouterService" service-category="MessageRouterService" service-name="MessageRouterService" /> </property> </action> </actions> </service> <!-- MessageRouterService changes include: -XPathLanguage.dsl expander added. This provides a mapping for the XPath commands in the CBR --> <service name="MessageRouterService" category="MessageRouterService" description="routes to different message processors depending on message type"> <listeners> <jms-listener name="MessageRouterListenerGW" busidref="MessageRouterGWChannel" is-gateway="true" /> <jms-listener name="MessageRouterListenerESB" busidref="MessageRouterESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="ContentBasedRouter" class="org.twia.esb.action.ContentBasedRouter"> <property name="ruleSet" value="MessageRouterRules.drl" /> <property name="ruleLanguage" value="XPathLanguage.dsl" /> <property name="ruleReload" value="true" /> </action> </actions> </service> <service name="BcAgencyCreatedUpdated" category="MessageProcessor" description="BcAgencyCreatedUpdated"> <listeners> <jms-listener name="BcAgencyCreatedUpdatedGWListener" busidref="BcAgencyCreatedUpdatedGWChannel" is-gateway="true" /> <jms-listener name="BcAgencyCreatedUpdatedESBListener" busidref="BcAgencyCreatedUpdatedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcAgencyCreatedUpdatedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcAgencyCreatedUpdatedTransform.xml" /> </action> <action name="BcAgencyCreatedUpdated" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="createORUpdateProducer" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="BcPolicyCreated" category="MessageProcessor" description="BcPolicyCreated"> <listeners> <jms-listener name="BcPolicyCreatedGWListener" busidref="BcPolicyCreatedGWChannel" is-gateway="true" /> <jms-listener name="BcPolicyCreatedESBListener" busidref="BcPolicyCreatedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcPolicyCreatedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcPolicyCreatedTransform.xml" /> </action> <action name="BcPolicyCreated" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="createAccountAndMakePayment" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="BcPolicyIssued" category="MessageProcessor" description="BcPolicyIssued"> <listeners> <jms-listener name="BcPolicyIssuedGWListener" busidref="BcPolicyIssuedGWChannel" is-gateway="true" /> <jms-listener name="BcPolicyIssuedESBListener" busidref="BcPolicyIssuedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcPolicyIssuedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcPolicyIssuedTransform.xml" /> </action> <action name="BcPolicyIssued" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="issuePolicy" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="BcPolicyReturned" category="MessageProcessor" description="BcPolicyReturned"> <listeners> <jms-listener name="BcPolicyReturnedGWListener" busidref="BcPolicyReturnedGWChannel" is-gateway="true" /> <jms-listener name="BcPolicyReturnedESBListener" busidref="BcPolicyReturnedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcPolicyReturnedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcPolicyReturnedTransform.xml" /> </action> <action name="BcPolicyReturned" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="issuePolicy" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="BcPolicyRejected" category="MessageProcessor" description="BcPolicyRejected"> <listeners> <jms-listener name="BcPolicyRejectedGWListener" busidref="BcPolicyRejectedGWChannel" is-gateway="true" /> <jms-listener name="BcPolicyRejectedESBListener" busidref="BcPolicyRejectedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcPolicyRejectedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcPolicyRejectedTransform.xml" /> </action> <action name="BcPolicyRejected" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="rejectPolicy" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="TbotPolicyCreatedAck" category="MessageProcessor" description="TbotPolicyCreatedAck"> <listeners> <jms-listener name="TbotPolicyCreatedAckGWListener" busidref="TbotPolicyCreatedAckGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyCreatedAckESBListener" busidref="TbotPolicyCreatedAckESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyCreatedAckTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyCreatedAckTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotCheckRequestedBc" category="MessageProcessor" description="TbotCheckRequestedBc"> <listeners> <jms-listener name="TbotCheckRequestedBcGWListener" busidref="TbotCheckRequestedBcGWChannel" is-gateway="true" /> <jms-listener name="TbotCheckRequestedBcESBListener" busidref="TbotCheckRequestedBcESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotCheckRequestedBcTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotCheckRequestedBcTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotPolicyIssuedAck" category="MessageProcessor" description="TbotPolicyIssuedAck"> <listeners> <jms-listener name="TbotPolicyIssuedAckGWListener" busidref="TbotPolicyIssuedAckGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyIssuedAckESBListener" busidref="TbotPolicyIssuedAckESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyIssuedAckTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyIssuedAckTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotPolicyReturnedAck" category="MessageProcessor" description="TbotPolicyReturnedAck"> <listeners> <jms-listener name="TbotPolicyReturnedAckGWListener" busidref="TbotPolicyReturnedAckGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyReturnedAckESBListener" busidref="TbotPolicyReturnedAckESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyReturnedAckTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyReturnedAckTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotPolicyRejectedAck" category="MessageProcessor" description="TbotPolicyRejectedAck"> <listeners> <jms-listener name="TbotPolicyRejectedAckGWListener" busidref="TbotPolicyRejectedAckGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyRejectedAckESBListener" busidref="TbotPolicyRejectedAckESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyRejectedAckTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyRejectedAckTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotInvoicePastDue" category="MessageProcessor" description="TbotInvoicePastDue"> <listeners> <jms-listener name="TbotInvoicePastDueGWListener" busidref="TbotInvoicePastDueGWChannel" is-gateway="true" /> <jms-listener name="TbotInvoicePastDueESBListener" busidref="TbotInvoicePastDueESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotInvoicePastDueTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotInvoicePastDueTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotPolicyCancelRequested" category="MessageProcessor" description="TbotPolicyCancelRequested"> <listeners> <jms-listener name="TbotPolicyCancelRequestedGWListener" busidref="TbotPolicyCancelRequestedGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyCancelRequestedESBListener" busidref="TbotPolicyCancelRequestedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyCancelRequestedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyCancelRequestedTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="BcPolicyCancelled" category="MessageProcessor" description="BcPolicyCancelled"> <listeners> <jms-listener name="BcPolicyCancelledGWListener" busidref="BcPolicyCancelledGWChannel" is-gateway="true" /> <jms-listener name="BcPolicyCancelledListener" busidref="BcPolicyCancelledESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcPolicyCancelledTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcPolicyCancelledTransform.xml" /> </action> <action name="BcPolicyCancelled" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="cancelPolicy" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="TbotPolicyCancelledAck" category="MessageProcessor" description="TbotPolicyCancelledAck"> <listeners> <jms-listener name="TbotPolicyCancelledAckGWListener" busidref="TbotPolicyCancelledAckGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyCancelledAckESBChannel" busidref="TbotPolicyCancelledAckESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyCancelledAckTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyCancelledAckTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="BcPolicyCashReceived" category="MessageProcessor" description="BcPolicyCashReceived"> <listeners> <jms-listener name="BcPolicyCashReceivedGWListener" busidref="BcPolicyCashReceivedGWChannel" is-gateway="true" /> <jms-listener name="BcPolicyCashReceivedESBListener" busidref="BcPolicyCashReceivedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="BcPolicyCashReceivedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcPolicyCashReceivedTransform.xml" /> </action> <action name="BcPolicyCashReceived" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="makePayments" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="TbotPolicyCashReceivedAck" category="MessageProcessor" description="TbotPolicyCashReceivedAck"> <listeners> <jms-listener name="TbotPolicyCashReceivedAckGWListener" busidref="TbotPolicyCashReceivedAckGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyCashReceivedAckESBListener" busidref="TbotPolicyCashReceivedAckESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyCashReceivedAckTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyCashReceivedAckTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="GpCheckRequestedTbot" category="MessageProcessor" description="GpCheckRequestedTbot"> <listeners> <jms-listener name="GpCheckRequestedTbotGWListener" busidref="GpCheckRequestedTbotGWChannel" is-gateway="true" /> <jms-listener name="GpCheckRequestedTbotESBListener" busidref="GpCheckRequestedTbotESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="GpCheckRequestedTbotTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/GpCheckRequestedTbotTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="GpCheckRequestedTbot" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="Create_PremiumRefund_PayablesInvoices" /> <property name="endpoint" value="http://waccdev-vmlag/WebService/BP_WebService_TWIA.asmx" /> <property name="namespace" value="http://aztecsystems.com/webservices" /> <property name="externalSystem" value="GP" /> </action> </actions> </service> <service name="GpCommissionCheckRequestedTbot" category="MessageProcessor" description="GpCommissionCheckRequestedTbot"> <listeners> <jms-listener name="GpCommissionCheckRequestedTbotGWListener" busidref="GpCommissionCheckRequestedTbotGWChannel" is-gateway="true" /> <jms-listener name="GpCommissionCheckRequestedTbotESBListener" busidref="GpCommissionCheckRequestedTbotESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="GpCommissionCheckRequestedTbotTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/GpCheckRequestedTbotTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="GpCommissionCheckRequestedTbot" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="Create_Commission_PayablesInvoices" /> <property name="endpoint" value="http://waccdev-vmlag/WebService/BP_WebService_TWIA.asmx" /> <property name="namespace" value="http://aztecsystems.com/webservices" /> <property name="externalSystem" value="GP" /> </action> </actions> </service> <service name="BcCheckUpdated" category="MessageProcessor" description="BcCheckUpdated"> <listeners> <jms-listener name="BcCheckUpdatedGWListener" busidref="BcCheckUpdatedGWChannel" is-gateway="true" /> <jms-listener name="BcCheckUpdatedListener" busidref="BcCheckUpdatedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="BcCheckUpdatedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/BcCheckUpdatedTransform.xml" /> </action> <action name="BcCheckUpdated" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="updateOutgoingPaymentInfo" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="TbotCheckUpdated" category="MessageProcessor" description="TbotCheckUpdated"> <listeners> <jms-listener name="TbotCheckUpdatedGWChannel" busidref="TbotCheckUpdatedGWChannel" is-gateway="true" /> <jms-listener name="TbotCheckUpdatedESBChannel" busidref="TbotCheckUpdatedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotCheckUpdatedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotCheckUpdatedTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotCommissionStatementRequested" category="MessageProcessor" description="TbotCommissionStatementRequested"> <listeners> <jms-listener name="TbotCommissionStatementRequestedGWChannel" busidref="TbotCommissionStatementRequestedGWChannel" is-gateway="true" /> <jms-listener name="TbotCommissionStatementRequestedESBChannel" busidref="TbotCommissionStatementRequestedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotCommissionStatementRequestedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotCommissionStatementRequestedTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotPolicyReinstateRequested" category="MessageProcessor" description="TbotPolicyReinstateRequested"> <listeners> <jms-listener name="TbotPolicyReinstateRequestedGWListener" busidref="TbotPolicyReinstateRequestedGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyReinstateRequestedESBListener" busidref="TbotPolicyReinstateRequestedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyReinstateRequestedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyReinstateRequestedTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> <service name="TbotPolicyReinstated" category="MessageProcessor" description="TbotPolicyReinstated"> <listeners> <jms-listener name="TbotPolicyReinstatedGWListener" busidref="TbotPolicyReinstatedGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyReinstatedListener" busidref="TbotPolicyReinstatedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyReinstatedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyReinstatedTransform.xml" /> </action> <action name="TbotPolicyReinstated" class="org.twia.esb.action.SOAPClientAction"> <property name="operation" value="reinstatePolicy" /> <property name="endpoint" value="http://twia506:8080/axis/services/ITWIABillingCenterAPI" /> <property name="namespace" value="api='http://api.webservices.bc.guidewire.com/'" /> <property name="externalSystem" value="BC" /> </action> </actions> </service> <service name="TbotPolicyIssueRequested" category="MessageProcessor" description="TbotPolicyIssueRequested"> <listeners> <jms-listener name="TbotPolicyIssueRequestedGWListener" busidref="TbotPolicyIssueRequestedGWChannel" is-gateway="true" /> <jms-listener name="TbotPolicyIssueRequestedESBListener" busidref="TbotPolicyIssueRequestedESBChannel" is-gateway="false" /> </listeners> <actions mep="OneWay"> <action name="TbotPolicyIssueRequestedTransform" class="org.jboss.soa.esb.actions.converters.SmooksTransformer"> <property name="resource-config" value="/smooks/TbotPolicyIssueRequestedTransform.xml" /> </action> <action name="validator" class="org.twia.esb.action.validation.XMLValidationAction" /> <action name="TbotJmsRouter" class="org.jboss.soa.esb.actions.routing.JMSRouter"> <property name="jndiName" value="queue/EsbToTbot" /> <property name="unwrap" value="true" /> </action> </actions> </service> </services> </jbossesb>
Other than using the jms-jca-provider is there anything else needed to get XA transaction support from the client? -
2. Re: Problem with JMS XA client sending msg to a remote serve
h.wolffenbuttel Nov 5, 2009 4:17 AM (in response to jhd)Hi,
You have put your "transacted" attribute on your gateway but not on your JMS-channel. You might want to try to add the attribute on "TbotJmsEsbChannel".
Futhermore the XA transaction support depends on how your configuration of your JMS-datasource. You might want to try to use a xa-datasource (if you not already have) instead of a tx-datasource.
Regards,
Hans -
3. Re: Problem with JMS XA client sending msg to a remote serve
jhd Nov 5, 2009 1:25 PM (in response to jhd)Thanks for your response. Unfortunately your suggestions did not help.
What do I need to do to get a ESB JMS client's transaction to roll back if an exception occurs in the client container?
Jboss AS Server1 === sends JMS msg ==> Jboss ESB Server2
The message is never successfully sent if I set transaction = true on the client side. I've tried several connection factories: ConnectionFactory, XAConnectionFactory and java:/JmsXA. -
4. Re: Problem with JMS XA client sending msg to a remote serve
h.wolffenbuttel Nov 9, 2009 3:55 AM (in response to jhd)Hi,
You need the XAConnectionfactory with the XA-datasource. Also you need to set the JMS-queue that you use for the transaction the transacted parameter to true. If I understand de JBoss ESB transaction correctly the following happens:
JBoss AS server => send JMS msg => JMS-queue ESB
fault:
get msg from JMS-queue and start transaction => Service Action pipeline => fault in pipeline => rollback in pipline => msg back in JMS-queue => transaction finished
No fault:
get msg from JMS-queue and start transaction => Service Action pipeline => send msg to next (ESB) service => transaction finished
The message will be transported between queue's in a transactional fashion. Since each service has its own queue, the message will rollback to the queue of the service it is currently in.
Maybe you are looking for a rollback which includes rollingback more services at once?
Regards,
Hans