After some thought, I'm actually going to try and write an UnknownHandler that will do all of this for me instead of the modifications to Struts itself. I should be able to handle everything that codebehind and zero-config do with my additional annotations and some other enhancements for handling "components" without diving into Tapestry or GWT or the like...

If anyone has reasons to believe that this won't work, just let me know. Otherwise, I'll hopefully get this running and then can submit it as a plugin.

-bp


Brian Pontarelli wrote:
I just got done writing an enhancement to the zero-configuration code. It provides a number of new features:

- Support for action name mapping so that you can transform from SomeNamedAction to someNamed.action or some_named.action. This uses an interface so it can be extended however is required. I made two implementations, the first uses the existing code to lowercase and remove the action ending, the second is an SEO friendly implementation that handles camel case and adds in underscores.

- Added the ActionName and ActionNames annotations for the action classes. These two annotations allow actions to provide non-default names as well as methods to invoke. You can also supply an array of ActionName annotations to allow a single action to handle multiple actions.

I did not add support to the result annotation to allow for results to be associated with specific actions, but that should be trivial. This stuff makes SEO handling pretty easy and also allows for modifications to the zero-configuration URL handling via annotations in the same manner that results can be modified via annotations. I'll be using this stuff here locally, but I think it would be pretty beneficial to the community and would like to discuss putting it back into core.

I can put together a patch file if anyone wants to look over the modifications.

-bp

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



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

Reply via email to