Announcement Announcement Module
Collapse
No announcement yet.
JMSException: CWSIA0053E: An exception was received during the call commitTransaction Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • JMSException: CWSIA0053E: An exception was received during the call commitTransaction

    Hi,
    I am using a standalone app to consume messages from websphere SI bus (v 7.0). I am using jre 1.6 for runtime env.

    I have configured MDCA as follows
    <jms:message-driven-channel-adapter id="leadExportJmsin"
    destination="jmsQueueDestination"
    connection-factory="jmsQueueCFWithCredentials"
    channel="leadExportChannel"
    concurrent-consumers="10"
    max-concurrent-consumers="50"
    idle-task-execution-limit="10"
    acknowledge="transacted"
    />
    On Websphere, i have 10 connections in the pool.
    Why would i be receiving that a connection is already closed exception?
    Any idea why iam getting this issue now?

    I have done all my development on Windows and never ran into this issue(probably i was lucky there). However, before sending it to QA, i tried the standalone app on Linux box and started seeing this problem.
    I would appreciate, if anyone has come across this error and also have a solution?

    I am adding more details below.
    Thanks
    sri

    Connection factory
    <beans : bean id="jmsQueueCFWithCredentials"
    class="org.springframework.jms.connection.UserCred entialsConnectionFactoryAdapter">
    <beans : property name="targetConnectionFactory" ref="jmsQueueConnectionFactory"/>
    <beans : property name="username" value="${jms.username}"/>
    <beans : property name="password" value="${jms.password}"/>
    </beans : bean>

    <beans : bean id="jmsQueueConnectionFactory"
    class="org.springframework.jndi.JndiObjectFactoryB ean">
    <beans : property name="jndiTemplate" ref="jndiTemplate"/>
    <beans : property name="jndiName" value="${jms.jndi.connection.factory}"/>
    </beans : bean>
    11-15-2010 12:15:02 WARN DefaultMessageListenerContainer: Execution of JMS message listener failed, and no ErrorHandler has been set.
    javax.jms.JMSException: CWSIA0053E: An exception was received during the call to the method JmsSessionImpl.commitTransaction (#3): com.ibm.wsspi.sib.core.exception.SIConnectionLostE xception: CWSIJ0047E: An operation was attempted on a connection that is already closed..
    at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.commitT ransaction(JmsSessionImpl.java:2698)
    at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.commit( JmsSessionImpl.java:706)
    at org.springframework.jms.support.JmsUtils.commitIfN ecessary(JmsUtils.java:217)
    at org.springframework.jms.listener.AbstractMessageLi stenerContainer.commitIfNecessary(AbstractMessageL istenerContainer.java:575)
    at org.springframework.jms.listener.AbstractMessageLi stenerContainer.doExecuteListener(AbstractMessageL istenerContainer.java:481)
    at org.springframework.jms.listener.AbstractPollingMe ssageListenerContainer.doReceiveAndExecute(Abstrac tPollingMessageListenerContainer.java:325)
    at org.springframework.jms.listener.AbstractPollingMe ssageListenerContainer.receiveAndExecute(AbstractP ollingMessageListenerContainer.java:263)
    at org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.invokeL istener(DefaultMessageListenerContainer.java:1058)
    at org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.execute OngoingLoop(DefaultMessageListenerContainer.java:1 050)
    at org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.run(Def aultMessageListenerContainer.java:947)
    at java.lang.Thread.run(Unknown Source)
    Caused by: com.ibm.wsspi.sib.core.exception.SIConnectionLostE xception: CWSIJ0047E: An operation was attempted on a connection that is already closed.
    at com.ibm.ws.sib.comms.client.LocalTransactionProxy. commit(LocalTransactionProxy.java:178)
    at com.ibm.ws.sib.api.jmsra.impl.JmsJcaSessionImpl.co mmitLocalTransaction(JmsJcaSessionImpl.java:457)
    at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.commitT ransaction(JmsSessionImpl.java:2661)
    ... 10 more
    Caused by: com.ibm.wsspi.sib.core.exception.SIConnectionDropp edException: CWSIJ0047E: An operation was attempted on a connection that is already closed.
    at com.ibm.ws.sib.jfapchannel.impl.ConversationImpl.s end(ConversationImpl.java:968)
    at com.ibm.ws.sib.jfapchannel.impl.ConversationImpl.e xchange(ConversationImpl.java:837)
    at com.ibm.ws.sib.comms.common.JFAPCommunicator.JFAPE xchange(JFAPCommunicator.java:377)
    at com.ibm.ws.sib.comms.client.LocalTransactionProxy. commit(LocalTransactionProxy.java:157)
    ... 12 more
    11-15-2010 12:15:02 WARN DefaultMessageListenerContainer: Execution of JMS message listener failed, and no ErrorHandler has been set.
    javax.jms.JMSException: CWSIA0053E: An exception was received during the call to the method JmsSessionImpl.commitTransaction (#3): com.ibm.wsspi.sib.core.exception.SIConnectionLostE xception: CWSIJ0047E: An operation was attempted on a connection that is already closed..
    at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.commitT ransaction(JmsSessionImpl.java:2698)
    at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.commit( JmsSessionImpl.java:706)
    at org.springframework.jms.support.JmsUtils.commitIfN ecessary(JmsUtils.java:217)
    at org.springframework.jms.listener.AbstractMessageLi stenerContainer.commitIfNecessary(AbstractMessageL istenerContainer.java:575)
    at org.springframework.jms.listener.AbstractMessageLi stenerContainer.doExecuteListener(AbstractMessageL istenerContainer.java:481)
    at org.springframework.jms.listener.AbstractPollingMe ssageListenerContainer.doReceiveAndExecute(Abstrac tPollingMessageListenerContainer.java:325)
    at org.springframework.jms.listener.AbstractPollingMe ssageListenerContainer.receiveAndExecute(AbstractP ollingMessageListenerContainer.java:263)
    at org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.invokeL istener(DefaultMessageListenerContainer.java:1058)
    at org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.execute OngoingLoop(DefaultMessageListenerContainer.java:1 050)
    at org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.run(Def aultMessageListenerContainer.java:947)
    at java.lang.Thread.run(Unknown Source)
    Caused by: com.ibm.wsspi.sib.core.exception.SIConnectionLostE xception: CWSIJ0047E: An operation was attempted on a connection that is already closed.
    at com.ibm.ws.sib.comms.client.LocalTransactionProxy. commit(LocalTransactionProxy.java:178)
    at com.ibm.ws.sib.api.jmsra.impl.JmsJcaSessionImpl.co mmitLocalTransaction(JmsJcaSessionImpl.java:457)
    at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.commitT ransaction(JmsSessionImpl.java:2661)
    ... 10 more
    Caused by: com.ibm.wsspi.sib.core.exception.SIConnectionDropp edException: CWSIJ0047E: An operation was attempted on a connection that is already closed.
    at com.ibm.ws.sib.jfapchannel.impl.ConversationImpl.s end(ConversationImpl.java:968)
    at com.ibm.ws.sib.jfapchannel.impl.ConversationImpl.e xchange(ConversationImpl.java:837)
    at com.ibm.ws.sib.comms.common.JFAPCommunicator.JFAPE xchange(JFAPCommunicator.java:377)
    at com.ibm.ws.sib.comms.client.LocalTransactionProxy. commit(LocalTransactionProxy.java:157)
    ... 12 more

  • #2
    Still no answers to my investigation. I did lookup logs on websphere, nothing much there in the logs. I will be opening a ticket with IBM to see if they have something to explain.

    I know this much, that we are running this app outside the container and connections are pooled by Websphere inside the containerl. However with caching, i thought SpringFramework will do the right thing.

    I am running Spring Integration 2.0.0.RC1 and Spring framework 3.0.5
    I have stopped my Standalone app and reran the app with tracing turned on at the Wesphere level. Now, i don't see that error. I am running load tests with 180K messages.

    I appreciate, if someone can throw some light on it.
    --sri


    Originally posted by srikondoji View Post
    Hi,
    I am using a standalone app to consume messages from websphere SI bus (v 7.0). I am using jre 1.6 for runtime env.

    I have configured MDCA as follows


    On Websphere, i have 10 connections in the pool.
    Why would i be receiving that a connection is already closed exception?
    Any idea why iam getting this issue now?

    I have done all my development on Windows and never ran into this issue(probably i was lucky there). However, before sending it to QA, i tried the standalone app on Linux box and started seeing this problem.
    I would appreciate, if anyone has come across this error and also have a solution?

    I am adding more details below.
    Thanks
    sri

    Connection factory

    Comment

    Working...
    X