0 Replies Latest reply on Feb 18, 2004 3:38 AM by gdevito

    Transaction Time out

    gdevito

      Hi all,
      I'm using jboss 3.2.2 with the minimal configuration.
      I've deployed successfully a stateless session EJB.
      This EJB uses a simple class with cached objects (arrays of static objects loaded at start up time) to return objects to the ejb clients. All seems to work fine for some days,
      but after this warning found in jboss server.log, jboss hangs :
      [org.jboss.tm.TransactionImpl] Transaction TransactionImpl:XidImpl [FormatId=257, GlobalId=cupweb//22187, BranchQual=] timed out. status=STATUS_ACTIVE

      Can anyone help me to debug this error ?
      I don't use jdbc in in my ejb

      Here is the simple ejb class :

      public class CacheEJB
      implements SessionBean
      {
      private SessionContext sessionContext;

      public void ejbCreate()
      {
      }

      public void ejbRemove()
      {
      }

      public void ejbActivate()
      {
      }

      public void ejbPassivate()
      {
      }

      public void setSessionContext(SessionContext context)
      {
      sessionContext = context;
      }

      public MyArray prestazioneSingola(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().prestazioneSingola(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }
      public MyArray prestazioneCiclo(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().prestazioneCiclo(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }

      public MyArray prestazioneUnitaOperativa(ParametriCache par,int ctrPk) throws RemoteException
      {
      try{
      return getDao().prestazioneUnitaOperativa(par,ctrPk);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }
      public MyArray getUnitaOperativePerPrestazione(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().getUnitaOperativePerPrestazione(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }
      public MyArrayPrestMultiple prestazioniMultiple(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().prestazioniMultiple(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }

      public MyArrayPrestMultiple prestazioniMultipleStessaData(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().prestazioniMultipleStessaData(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }
      public String[] getStrutturePerPrestazioni(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().getStrutturePerPrestazioni(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }
      public String[] getStrutturePerPrestazioniDate(ParametriCache par) throws RemoteException
      {
      try{
      return getDao().getStrutturePerPrestazioniDate(par);
      }catch(Exception e){
      e.printStackTrace();
      throw new RemoteException(e.getMessage());
      }
      }



      // private methods and attributes

      private CacheImpl myDao=null;

      private CacheImpl getDao()
      {
      if (myDao==null)
      myDao = CacheImpl.getInstance();
      return myDao;
      }

      }