On 8/3/06, Jason Carreira <[EMAIL PROTECTED]> wrote:
Either way, you're still talking about multiple aliases for one class, which is 
what Ted was
saying we should deprecate.

Ted didn't say deprecate. Ted said that it didn't seem like a best
practice,  in the same way that chaining actions is not a best
practice. Mainly because it goes against the grain of the "advanced"
features like type converters, localization, and especially
validation.

For how it's done... Well, I hate the "!" notation... We've had to
jump through a lot of
hoops to support it and it still bites us every now and again. Plus,
it's just a security hole,
plain and simple.

Yes, and that we've already deprecated the bang-syntax. In the head,
it's only supported when a compatibility switch is turned on, and I
expect it would be removed entirely in 2.1.

The next question is whether there will be support for the
ActionClass-method-validatation idiom. (Is there still support?)

* https://issues.apache.org/struts/browse/WW-1018

(After commenting here, I began to rethink how strongly we should
support multiple aliases.)


I like the idea of wildcards, and I'd like to be able to specify certain 
wildcard patterns that
can be used across many paths and specify interceptor stacks to go with them:

/entity/*/list  -> listStack
/entity/*/edit  -> editStack

and then

/entity/invoice/list

would match the first wildcard and have the specific listStack applied.

Me too. I think when we use multiple alaises, using multiple stacks is
a sane approach. It dodges using "magic" names to skip validation.
Though, it doesn't provide a way to validate a specific method, unless
we use Java or the ActionClass-method-validator idiom

This sort of special-case handling is why I'm leaning toward
one-method per Action. All the commands have a full array of extension
points, without any smoke or mirrors.

In the end, the complexity has to live somewhere. With
she-bang-magic-methods, it was living in the framework, creating a lot
of special-case code, and creating security issues. With
multiple-methods, the complexity moves to swapping stacks and maybe
doing some validations outside for the framework. With single-method,
the complexity moves to creating more classes.

-Ted

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

Reply via email to