code: private void endASLocalTx(EJBKey key,
                                EJBMethodInfoImpl methodInfo,
                                LocalTransactionCoordinator lCoord,
                                boolean rollback)
      {
          // For EJB 2.0 SFSBs or Entity Beans with local tx boundary = ActivitySession,
          // do not end the local tx context now, but suspended it for reuse in
          // susequent methods (i.e. "sticky" local tx).  This is not done for home
          // methods because we have the key of the home rather than the key of the
          // bean instance.
          //
          // In the rollback case, where a bean method has thrown an exception, we
          // do not end the local tx context now.  The ActivitySession should have
          // been marked resetOnly which will eventually casue this local tx to end
          // with rollback.  In the mean time the application may continue to do
          // work on this local context, but it will be futile.
          //
          // Note that EJB 1.1 beans never have local tx boundary = ActivitySession.
          // This is enforced by a check in BeanMetaData.
  
          int type = methodInfo.getBeanMetaData().getEJBComponentType();
          if (!methodInfo.isHome() && // d126930.3
              type != InternalConstants.TYPE_MESSAGE_DRIVEN)
          {
              if (rollback)
              {
                  lCoord.setRollbackOnly(); // d179185
              }
  
              suspendLocalTx();
  
              if ((type == InternalConstants.TYPE_STATEFUL_SESSION ||
                   type == InternalConstants.TYPE_BEAN_MANAGED_ENTITY ||
                  type == InternalConstants.TYPE_CONTAINER_MANAGED_ENTITY) &&
                  !methodInfo.isBeanRemove()) // d179185, d180809
              {
                  txCtrl.stickyLocalTxTable.put(key, lCoord);
              }
          }
      }
docs: RTC103197