Uploaded image for project: 'Application Server 7'
  1. Application Server 7
  2. AS7-1995

Re-entrant call into SFSB invalidly blocks

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • 7.1.0.CR1
    • None
    • EJB
    • None

    Description

      Calling a method on the proxy returned by SessionContext.getBusinessObject(Class) can lead to incorrect ConcurrentAccess(Timeout)Exceptions.

      @Stateful
      public class ReentrantStatefulBean {
          @Resource
          private SessionContext ctx;
      
          private Object state;
      
          @TransactionAttribute(NEVER)
          public void callMe() {
              this.state = new Date().toString();
              ctx.getBusinessObject(ReentrantStatefulBean.class).check(this.state);
          }
      
          @TransactionAttribute(REQUIRED)
          public void check(final Object check) {
              if (this.state != check)
                  throw new IllegalStateException("EJB 3.1 FR 21.2 I'm not being myself today");
          }
      }
      

      Attachments

        Issue Links

          Activity

            People

              rhn-engineering-cdewolf Carlo de Wolf
              rhn-engineering-cdewolf Carlo de Wolf
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: