Announcement Announcement Module
Collapse
No announcement yet.
AOP transaction proxy in WebSphere 5.1: thread problem? Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • AOP transaction proxy in WebSphere 5.1: thread problem?

    hi!

    In WebSphere app server 5.1 we are doing the following:

    1. remote SLSB with BMT delegates to Spring-configured business object BO1, which in turn uses Spring-configured business object BO2
    2. BO1 and BO2 make use of TransactionProxyFactoryBean and JtaTransactionManager
    3. JtaTransactionManager uses WebSphereTransactionManagerFactoryBean for WebSphere-specific lookup of the JTA TransactionManager.
    4. methods on BO1 have transaction attributes PROPAGATION_REQUIRED, while methods on BO2 have transaction attributes PROPAGATION_NOT_SUPPORTED (which is the reason why we need the JTA TransactionManager)

    Now: in principle this transaction setup works fine: a transaction is created upon entry of the methods in BO1 and is then temporarily suspended while the methods in BO2 execute.

    But: When executing a DB-access from the methods in BO1, WebSphere issues the following warnings:

    ...ConnectionMan W J2CA0075W: An active transaction should be present while processing method allocateMCWrapper.
    ...ConnectionMan W J2CA0075W: An active transaction should be present while processing method initializeForUOW.

    A description of this warning can be found at

    http://www-1.ibm.com/support/docview...f-8&lang=en+en

    it basically says that DB-access is done from a separate thread.

    My questions are:
    1. should we worry at all about this warning (I do)
    2. our app definitely does not spawn any threads and I don't see any reason why Spring should (in this case). Is the warning misleading or is Spring really responsible for this warning?

    any help is greatly appreciated!,
    cheers,
    gerald

  • #2
    ...switching to Local SLSB with CMP solves the issue

    just an additional piece of information regarding this question of mine:

    If we

    1. change the remote SLSB from BMT to CMT (tx attributes Required),
    2. remove the AOP tx proxy for BO1 and
    3. hide BO2 behind a Local SLSB (instead of the AOP tx proxy) with CMT (tx attributes NotSupported)

    (in short: if we change from Spring AOP tx proxies behind SLSBs with BMT to plain old SLSBs with CMT)

    the mentioned warning message disappears.

    Sadly, this leads us to shy away from the Spring AOP transaction approach in this case and revert to (local) SLSBs.

    thanks again for your help,
    gerald

    Comment


    • #3
      Gerald

      Our app definitely does not spawn any threads and I don't see any reason why Spring should (in this case). Is the warning misleading or is Spring really responsible for this warning?
      Spring won't be starting any threads here. I suspect it's a WebSphere oddity. Have you tried doing the same thing using the JTA UserTransaction (which Spring will use under the covers) to try to reproduce the problem without Spring?

      Rgds
      Rod

      Comment

      Working...
      X