IBM has posted a new JSR 149: The Work Area Service for J2EE. This JSR allows J2EE developers to set custom properties as application context that is implicitly attached to and made available anywhere during the processing of remote requests. Currently, the request context available within a J2EE runtime is limited to transactional status and the security principal.
- Posted by: Floyd Marinescu
- Posted on: September 26 2001 10:10 EDT
Check out JSR 149: Work Area Service for J2EE.
- New JSR: Work Area Service for J2EE by Marko Milicevic on September 26 2001 12:56 EDT
- New JSR: Work Area Service for J2EE by William Louth on September 27 2001 05:58 EDT
- New JSR: Work Area Service for J2EE by Donnie Hale on September 27 2001 16:19 EDT
This is badly needed for distributed logging/tracing.
Thanks for the pointer Floyd.
Absolutely, one thing we were badly missing for our J2EE distributed application. i think websphere 4.0 extensions do give u this option, but it will good if they can add it to the J2EE specs.
Agreed...we've been asking for about 2 years now. With EJB 1.0 you could store a text string in one of the security classes but they deprecated that API (rightfully so) for 1.1. Hopefully they can get this rolled out soon.
Passing application contexts between clients and servers is already there in Borland AppServer due to the fact that it is built ontop of VisiBroker which includes support for the registration of client and server side interceptors.
We've done this for our application (obviously in a non-standard way). We use a dynamic proxy on the server side through which all requests get routed. The "invoke" method on that proxy sets values in a ThreadLocal. Any method down the callstack from there can retrieve those values. We can add more items to that w/o using more ThreadLocals.
It would be nice to have a standard in this area. The one risk of our approach is if the entire processing for a single request is not all done in the same thread (perhaps due to an intra-container bean-to-bean call).