Entity bean would have nothing to do in a stateless context. Remember stateless = no state. On second request you would have an empty entity bean.
Keep you SLSB and put your entity bean in a conversation or session.
thanks. are the cached entity beans (in the session /conversation context) "attached" to the underlying persistence session between requests. if not, does the framework "attach" them for each call ? when the bean is changed (via a form), does the framwork merge the changes automatically to the d/b. if so what happens to the "state" of the entity bean in some other session.
as per the documentation, entity beans may never be bound to stateless context.
why is this so ? if i want to update an entity bean on a per-request basis then i could create a SLSB and inject the entity bean and update it from the action method of the SLSB. ?
You _can_ bind an entity bean to the request context.
thanks. are the cached entity beans (in the session /conversation context) "attached" to the underlying persistence session between requests.
(a) the entity bean is conversation scoped
(b) you use a seam-managed PC or a conversation-scoped SFSB with an extended PC
i have tried to use option (b) above.
so in the code, i simply modified the entity bean hoping that the changes would get commited without explicitly invoking the entity manager, but this did not happen.
i also annotated the method as @Destroy @Remove -- how can i cause the SFSB to be removed (from application code)
and also tried with @End. none of this commited changes to the DB. am i missing anything ?
i would assume that when a method annotated with @Remove @Destroy is executed (SFSB), the persistent context is flushed and changes commited to the DB when this method is invoked ?
i dont see the modifications to the entity beans being commited to the DB after the execution of the above annotated method.
is anything missing ?
You must retrieve the entity from the conversation-scoped PC, and then whenever a transaction commits, changes to the entity will be flushed to the database.