users@glassfish.java.net

RE: How to transport applicative data across method calls like acontext

From: Shevland, Joe <joe.shevland_at_capgemini.com>
Date: Thu, 26 Jul 2007 09:40:56 +1000

> In fact i would like to have the same behaviour as a
> statefull session bean but for a stateless one. Yes it is
> strange but i am not sure that the standalone client
> application calls the remove method of the bean.
>
> I do not have a conversationnal state or any kind of session
> communication but i would like to transport transparently
> some transversal data in a kind of invocation context when
> the client invokes a method and for all its subordinates methods.
>
> For example, when the security is activated in the
> application server it is possible for all methods to known
> which is the principal name that calls the method
> (SessionContext.getCallerPrincipal()). This principal is not
> defined in any bean and does not appears in methods signature
> but it is accessible by all methods of all beans through the
> session context. This is that i would like to do in order to
> memorize transparently some information and be sure that this
> data is not visible in the api but could be reached
> everywhere in the code.
>
> So for that, stateful session bean does not match my requirement.
>
> Do you have an other solution?

If there's no requirement for conversational state between calls, and
the 'transversal data' just needs to propogate for a method and its
'subordinates', would a ThreadLocal do the trick?

This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.