DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5373>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5373

ActionServlet Refactoring





------- Additional Comments From [EMAIL PROTECTED]  2001-12-21 15:49 -------
I can't speak to a "perhaps", since we can only vote on working code. Generally, 
I do think it is better to do a true refactoring one step at a time, and to pick 
your battles. However, a great number of deprecations does start to indicate 
that we have gone past a refactoring, and are really talking about a redesign. 

Now, a redesign is not a bad thing. Catalina was a redesign of Tomcat, and 
coexists with the original codebase. There's no reason why we cannot do the same  
thing. 

The key to Struts is not so much the controller, but the resources it exposes -- 
the forwards, forms, mappings, and messages. In effect, these are the 
framework's model. The controller "sponsors" them, but they really belong 
to the framework. There's no reason why we cannot offer more than one servlet 
that exposes these resources. Or, a serlvet here and a filter there. 

So, what I guess I'm saying is that you may not be refactoring the ActionServlet 
class as much as the controller it represents. The conventional Apache approach 
for a revolution (and we do *like* revolutions), is to start with a whiteboard 
package. If the package becomes popular, we can then vote to make it the 
mainstream approach. 

So, I would suggest that a pristine copy of your controller be posted in a 
whiteboard package, and presented as a likely alternative to the ActionServlet. 
I believe the only thing most people would have to change is what is loaded in 
the web.xml. The rest of the application would be obvlivous. 

Offhand, I would suggest "jericho" for the whiteboard package code name, since 
you appear to be tearing down some walls in ActionServlet ;-) Or, any other 
suitable name would do as well.

You could also call the controller "controller", or anything else that is 
suitable. Again, to show it is a clean break from the ActionServlet series. 

-T.

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

Reply via email to