• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Paul Clapham
  • Ron McLeod
  • paul wheaton
  • Devaka Cooray
Sheriffs:
  • Jeanne Boyarsky
  • Tim Cooke
  • Liutauras Vilda
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Stephan van Hulst
  • Carey Brown
  • Piet Souris
Bartenders:
  • salvin francis
  • Mikalai Zaikin
  • Himai Minh

Callbacks with System Exceptions

 
Greenhorn
Posts: 26
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
On page 361 of the Core EJB specification it states that:

Discard instance means that the container must not invoke any business methods or container callbacks
on the instance



Now if my Stateless session bean throws a RuntimeException this would mean that the @PostConstruct callback should not get get called:



However when I invoke the add() method the @PostConstruct method is getting called every time?
 
Jarrod Felino
Greenhorn
Posts: 26
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This is from section 12.4.2 of the EJB Core Specification.

The PreDestroy callbacks are not invoked when the bean and the interceptors are discarded as a
result of such exceptions: the lifecycle callback interceptor methods in the chain should perform any
necessary clean-up operations as the interceptor chain unwinds.



Is this because I am using JBoss and another Interceptor is handling the exception?
 
Ranch Hand
Posts: 856
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

However when I invoke the add() method the @PostConstruct method is getting called every time?



I don't see any @PostConstruct in your code.
 
Jarrod Felino
Greenhorn
Posts: 26
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Sorry I meant @PreDestroy
 
Amandeep Singh
Ranch Hand
Posts: 856
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
After creating the bean, the add method is being called. Then it throws exception, so as a part of unwinding process, the @PreDestroy annotation is being called.
 
You showed up just in time for the waffles! And this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
reply
    Bookmark Topic Watch Topic
  • New Topic