• 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
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

SessionContext Interface question

 
Sheriff
Posts: 9109
12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
1: why is there no unsetSessionContext() in SessionContext Interface?
 
Ranch Hand
Posts: 148
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Marylin, Thanks a lot for putting the questions in diffrenet threads.
 
Avijeet Dash
Ranch Hand
Posts: 148
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This contradicts the intended use of ejbRemove() for entity beans, for which ejbRemove() is called when the bean is being destroyed in the persistent store. If you take a close look at the entity EJB state diagram, another container callback is used to notify a bean that it is being moved from the "pooled" state to the "does not exist" state: unsetEntityContext(). As an instructor to hundreds of students who're learning EJBs, it's often a nightmare to explain to them that ejbRemove() for session beans and unsetEntityContext() for entity beans represent the same event transitions, but ejbRemove() for entity beans really means destruction.
Here's a proposal, though the migration to support it would be difficult: how about changing ejbRemove() in the SessionBean interface to be unsetSessionContext() and alter ejbRemove() in the entity bean interface to be ejbDestroy()? In this scenario, the ambiguous ejbRemove() wouldn't exist in either interface and consistency would exist between setXXXContext() and unsetXXXXContext() callbacks.
http://www.onjava.com/pub/a/onjava/2001/02/28/ejb.html
reply
    Bookmark Topic Watch Topic
  • New Topic