Upon reviewing wicket-contrib-javaee, I suspect that its behavior wrt
stateful session beans is broken.

afaict, it caches a single lazy init proxy per EJB type
(JavaEEProxyFieldValueFactory#getCachedProxy).  It then injects it
into every component that needs an instance of that EJB type.

The first component to access the lazy proxy triggers the target
lookup, so all the components will have a proxy to the *same* EJB
which is the wrong behavior.  At least for stateful session beans
like, say, a shopping cart, this would be bad because every user would
share the same cart.

Furthermore, if the component is serialized and brought back, the
deserialized lazy proxy will do a new target lookup and get a new EJB.
So again in the shopping cart case, this is bad because the web
application will forget your cart.

I'm wondering if my understanding of contrib-javaee, lazy proxies, and
component serialization is correct.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to