EJB (Enterprise Java Beans) - ejbStore

 
Vista:

ejbStore

Publicado por mariano (1 intervención) el 01/12/2004 14:31:58
hola, resulta que estoy incursionando en el fabuloso mundo de los ejb
segun me dijeron, el ejbStore se llama automaticamente cuando uno hace un set que modifique el contenido de los atributos de un entity

ahora... no logro hacer que el store se autoejecute
en que puedo estar fallando, o... realmente se llama solo??

saludos!

pd: por lo pronto lo estoy invocando yo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ejbStore

Publicado por Ani Alamo (8 intervenciones) el 06/12/2004 16:21:01
Recuerda, que los metodos ejbStore y ejbLoad son llamados, los metodos callback de un ejb CMP. Porque no los llamamos directamente, pero el contenedor, se encarga de mantener la data en MEMORIA y en el almacenamiento persistente.
ejbLoad es llamado cuando tu invocas al metodo de busqueda de tus datos. De lo contrario pasa con el ejbStore.
Por eso algunas veces el Contenedor EJB NO llama al ejbStore inmediatamente despues de nosotros haber invocado a los metodos de accesos a datos (get / set), pero el contenedor decidira cuando ellos tienen que sincronizar la data entre el EJB y el almacenamiento persistente (la base de datos).

Entonces asegurate que tipo de ejb de entidad usas, si es un CMP, (persistencia manejada por el contenedor) o BMP (persistencia manejada por el propio bean), para ello verifica tu "deployment descriptor". Entonces si no tienes nada de codigo en el metodo ejbStore, y si se esta guardando los datos, a traves de los metodos set... es porque tienes un ejb CMP y automaticamente el ejbStore se ejecuta, de lo contrario, estas usando un BMP, y tu debes implementar en el metodo store, lo que debes hacer. Porque si no... si teniendo un BMP no hay modo de que el contenedor pueda hacer actualizaciones, con el metodo vacio.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar