This is interesting, thanks Scott.

Maybe another option could be that of adding a "condition" attribute to the 
pre-processor element (like path="sub").

Jacopo

On Feb 15, 2011, at 11:40 PM, Scott Gray wrote:

> I regularly run into a situation where I need a pre-processor event to run 
> only for a sub-set of a webapp's requests, usually within a particular group 
> of screens (an example might be that you want to check that a specific 
> session attribute or request parameter is set before allowing access to that 
> set of requests).  Currently you can only run an event for either a single 
> request (request-map.event) or for every request (preprocessor.event) within 
> a webapp, there isn't really any in-between.
> 
> I threw together a quick PoC this morning for a sub-controller implementation 
> that would allow a webapp to have multiple controllers.  Basically you have 
> your regular controller at /control/ but within the controller.xml you can 
> define sub-controllers and the path that it should use:
> Main controller.xml
> <sub-controller 
> location="component://example/webapp/example/WEB-INF/sub-controller.xml" 
> path="sub"/>
> now every request to /control/sub/* will use the sub-controller.xml instead 
> of the main controller and is handled in exactly the same way as the main 
> controller would be.
> 
> Any thoughts?
> 
> Thanks
> Scott
> 
> HotWax Media
> http://www.hotwaxmedia.com
> 

Reply via email to