[jboss-svn-commits] JBL Code SVN: r21088 - labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jul 17 13:06:47 EDT 2008
Author: kevin.conner at jboss.com
Date: 2008-07-17 13:06:47 -0400 (Thu, 17 Jul 2008)
New Revision: 21088
Modified:
labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JmsGatewayListener.java
Log:
make acknowledgement consistent: JBESB-1872
Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JmsGatewayListener.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JmsGatewayListener.java 2008-07-17 13:57:04 UTC (rev 21087)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JmsGatewayListener.java 2008-07-17 17:06:47 UTC (rev 21088)
@@ -154,43 +154,39 @@
if (null != msgIn) {
try {
Object obj = _processMethod.invoke(_composer, new Object[] {msgIn});
- // commit and acknowledge the reception of the message
- // this is done after extracting the content of the JMS Message.
- if (jmsSession.getTransacted()) {
- jmsSession.commit() ;
- } else {
- msgIn.acknowledge() ;
- }
if (null == obj) {
_logger.warn("Action class method <"
+ _processMethod.getName()
+ "> returned a null object");
- continue;
- }
- // try to deliverAsync the composed message, using the
- // appropriate courier
- // to the target service
+ } else {
+ // try to deliverAsync the composed message, using the
+ // appropriate courier
+ // to the target service
- Map<String, Object> params = new HashMap<String, Object>();
+ Map<String, Object> params = new HashMap<String, Object>();
- params.put(Environment.GATEWAY_CONFIG, _config);
+ params.put(Environment.GATEWAY_CONFIG, _config);
- obj = FilterManager.getInstance().doOutputWork((Message) obj, params);
+ obj = FilterManager.getInstance().doOutputWork((Message) obj, params);
- try {
- Message message = (Message) obj;
- _serviceInvoker.deliverAsync(message);
+ try {
+ Message message = (Message) obj;
+ _serviceInvoker.deliverAsync(message);
+ }
+ catch (ClassCastException e) {
+ _logger.error("Action class method <"
+ + _processMethod.getName()
+ + "> returned a non Message object", e);
+
+ rollbackJMSTransaction();
+ }
}
- catch (ClassCastException e) {
- _logger.error("Action class method <"
- + _processMethod.getName()
- + "> returned a non Message object", e);
-
- rollbackJMSTransaction();
- continue;
+ if (jmsSession.getTransacted()) {
+ jmsSession.commit() ;
+ } else {
+ msgIn.acknowledge() ;
}
- continue;
}
catch (InvocationTargetException e) {
_logger.error("Problems invoking method <"
More information about the jboss-svn-commits
mailing list