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.
If you look in your web.xml file, you will find an entry similar to the following:
This is essentially telling the server: "If you get a request URL that ends in .do, pass it to the Struts ActionServlet class for processing". Once inside ActionServlet, the code knows that if the URL is /myAction.do, it is to instantiate and call execute on the class you've defined for the "/myAction" mapping.
Going the other direction, if you specify "/myAction" as the action in an html:form tag, the tag logic will append ".do" to the action when it is composing the actual URL that gets sent to the server when the form it submitted.