Uploaded image for project: 'DeltaSpike'
  1. DeltaSpike
  2. DELTASPIKE-507

UserTransaction not available in WAS 8.0 and 8.5 during EJB CMT call

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 0.5
    • 0.6
    • JPA-Module
    • None
    • IBM Websphere 8.0.0.6 and 8.5.5.1

    Description

      It seems that due to different interpretations of the EE Spec WAS behaves differently when calling a CDI bean from a CMT EJB. While TomEE for example gives access to the UserTransaction, WAS will not (@Resource inject fails as well as lookup via JNDI "java:comp/UserTransaction". This behavior currently (0.6-SNAPSHOT) results in a NameNotFoundException in BeanManagedUserTransactionStrategy#resolveUserTransaction()

      To provide a workaround for WAS the idea would be to resort back to TransactionSynchronisationRegistry which also exposes the current Transaction Status (even on WAS) and should therefore be sufficient to implicitely "join" the currently ongoing transaction. A Status != ACTIVE should probably still result in an error indicating probably a misconfigured RESOURCE_LOCAL Datasource

      Attachments

        1. DELTASPIKE-507_with_cleanup_01.patch
          6 kB
          Gerhard Petracek
        2. DS_509_tested_on_was.patch
          8 kB
          Stefan Strobl

        Issue Links

          Activity

            People

              struberg Mark Struberg
              sstrobl Stefan Strobl
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: