jleinawe [https://community.jboss.org/people/jleinawe] created the discussion

"JCA Spec violation using resource-adapter in JBoss 7?"

To view the discussion, visit: https://community.jboss.org/message/799730#799730

--------------------------------------------------------------
JBoss AS 7.1.1.Final-SNAPSHOT
JBoss IronJacamar 1.0.8.Final

Testing a JMS resource-adapter deployed to JBoss which will use WebLogic as the 
JMS provider.  In a transacted MDB test, this error appears in the JBoss log 
(which is attached) when the MDB tries to send and outbound reply message

11:18:24,023 ERROR [stderr] (default-short-running-threads-threads - 1) 
javax.transaction.xa.XAException: J2EE GJRA-01501: cause = Attempt to start a 
transaction while in an active (global or local) transaction.; action = 
Complete current transaction before starting another


By analysis our RA's own tracing, this looks like a JCA spec violation.  
xaResourceWrapper2 (the XAResource for managedConnectionImpl0) is being 
enlisted with xid3.  Then without delisting xaResourceWrapper2, jboss is doing 
a managedConnectionImpl0.cleanup() call (which is a JCA spec violation).  Then 
later when it tries to enlist xaResourceWrapper2 with xid5, that fails because 
xaResourceWrapper2 is still enlisted with xid3.  (That enlistment attempt is 
not even getting to WebLogic JMS because the RA is detecting the XA protocol 
violation.)

Excerpts from log:

   out:MessageEndpoint.beforeDelivery(public abstract void 
javax.jms.MessageListener.onMessage(javax.jms.Message)) #4 
@1361560688075..1361560688295
      in:xaResourceWrapper0.setTransactionTimeout(300) -> true #4 
@1361560688102..1361560688173
         out:XAResource.setTransactionTimeout(300) -> true #4 
@1361560688126..1361560688155
      in:xaResourceWrapper0.start(xid3,0) #4 @1361560688191..1361560688277 
[TMNOFLAGS]
         out:XAResource.start(xid3,0) #4 @1361560688223..1361560688260     
[TMNOFLAGS]
   [...]
   out:MessageListener.onMessage(genericStreamMessage0) #1 
@1361560697008..1361560702586
      in:wlxaQueueConnectionFactory0.createConnection() -> wlConnection0 #1 
@1361560698037..1361560700740
         
out:ConnectionManager.allocateConnection(wlManagedXAQueueConnectionFactory0,connectionRequestInfoImpl0)
 -> wlConnection0 #1 @1361560698093..1361560700687
            [...]
            *in:managedConnectionImpl0.getXAResource() -> xaResourceWrapper2* 
#1 @1361560699619..1361560699675
            [...]
            *in:xaResourceWrapper2.start(xid3,2097152)* #6 
@1361560700092..1361560700275 [TMJOIN]
               out:XAResource.start(xid3,2097152) #6 
@1361560700157..1361560700226     [TMJOIN]
   [...]
   out:MessageEndpoint.afterDelivery() #4 @1361560702595..1361560702930
      in:xaResourceWrapper0.end(xid3,67108864) #4 @1361560702612..1361560702709 
[TMSUCCESS]
         out:XAResource.end(xid3,67108864) #5 @1361560702649..1361560702688     
[TMSUCCESS]
      in:xaResourceWrapper0.commit(xid3,true) #4 @1361560702729..1361560702851
         out:XAResource.commit(xid3,true) #4 @1361560702766..1361560702830
      i*n:managedConnectionImpl0.cleanup()* #1 @1361560702871..1361560702904 
[JCA spec violation]
   out:MessageEndpoint.beforeDelivery(public abstract void 
javax.jms.MessageListener.onMessage(javax.jms.Message)) #6 
@1361560702938..1361560703159
      [...]
   out:MessageConsumer.receive(15000) -> 
TextMessage[ID:<384827.1361560696991.0>, null] #6 @1361560703168..1361560703201
   out:MessageListener.onMessage(genericTextMessage0) #2 
@1361560703226..1361560704964
      in:wlxaQueueConnectionFactory0.createConnection() threw #2 
@1361560703250..1361560704672
         
out:ConnectionManager.allocateConnection(wlManagedXAQueueConnectionFactory0,connectionRequestInfoImpl0)
 threw #2 @1361560703307..1361560704447
            [...]
            i*n:xaResourceWrapper2.start(xid5,2097152) threw* #8 
@1361560703786..1361560703871 [TMJOIN]
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/799730#799730]

Start a new discussion in IronJacamar at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2098]

_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to