This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Certainly you can write your own ActionServlet. I'm not sure why you'd want to, but you can. It's a little like going out and buying a brand new car and then immediately pulling out the engine and replacing it with one you built yourself. If you didn't like the engine in the car, why did you buy it in the first place?
If you did replace the ActionServlet, it would make sense to extend the Struts ActionServlet rather than starting from scratch. It's really the RequestProcessor, though, that does most of the real work in Struts, so that's more likely the class that you'd want to extend if you want to customize how Struts works.
My recommendation, though, would be to spend the time to fully understand what Struts does and how it does it before you think about making broad changes to it. Since Struts is open source, you're free to look at the source code. [ August 09, 2007: Message edited by: Merrill Higginson ]