Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-1690

Timer.cancel in a transaction never calls TimerImpl.killTimer

XMLWordPrintable

      Calling Timer.cancel in a Transaction does not delete the timer.
      The Timer is marked as CANCELED if transaction is commited, thus ejbTimeout is not called.

      However - the TimerImpl.TimerTask.run does nothing if Timer.isActive is false.

      Proposed solution:
      Either call killTimer in TimerTask.run, or treat CANCELED and EXPIRED the same way.

      See JBoss Forum for source code (SessionBean+UnitTest) to reproduce the problem

        1. TimerTestBean.java
          7 kB
          Øystein Hansen
        2. TimerTestClient.java
          5 kB
          Øystein Hansen

              dandread1@redhat.com Dimitrios Andreadis
              hanseno2 Øystein Hansen (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: