Turns out Yahoo internally uses Struts for their web development, so it appears its time for me to understand Struts. (Did I mention the fact that I’m changing jobs? Could be; haven’t told my current employer, though, and the offer isn’t in writing.)
The problem is my fuzzy little brain doesn’t work well with black boxes. I need to have a mental model of how things work–even if that mental model isn’t precisely what is going on under the surface. I’ve never been a “cookie-cutter” programmer; I’m not the type to want to be handed something then told “okay, follow this formula and you’ll get something that works.”
So the tutorials for Struts which begin “grab the empty war file, and start adding stuff”–uh, it doesn’t work for me. I have a mental model as to how Tomcat works and the lifespan of a servlet; I even have a mental model of how JSP pages work–though the mental model is missing stuff, like how tags in the tag library works. So the idea that I should just follow the instructions and not worry about how it works for Struts–that won’t make my life easier.
Fortunately I came across the simple setup guide, which appears to walk through the skeleton of a Struts application, from where the .jar files go to how to set up the web.xml configuration file to the basic struts.xml file. Between this and the documentation home with the architecture, tags and configuration in a nutshell, that looks like a very promising place for me to start…