users@glassfish.java.net

Re: Why does my timer expunge?

From: Oliver B. Fischer <mailsink_at_swe-blog.net>
Date: Tue, 06 Aug 2013 16:25:43 +0200

I tried the same code with JBoss. JBoss does not expunge the timer.

Am 06.08.13 16:15, schrieb Oliver B. Fischer:
> I think the problem is that runFullUpdate() calls another EJB which
> throws an exception. GF wraps this exception in an
> javax.ejb.EJBTransactionRolledbackException. Because of this exception
> GF expunges the timer.
>
> I think this is against the EJB specification. The specification states
> only in section "18.2.5.3 Timeout Callback Method Requirements":
>
> "Timeout callback methods must not throw application exceptions."
>
> In my personal opinion the timeout callback method must be independend
> of exceptions thrown during the method call if no exception is thrown by
> the method itself.
>
> How should I write a stable service if an exception somethere else
> thrown and catched causes my timer to be expunged?
>
> Should I open an issue with an example for this problem?
>
>