Nathaniel, I've tried it with and without the / but it prints the same error message.
Somehow, it is looking in the struts-config-public.xml file for the inputModifyContact action mapping even though I am forwarding to inputModifyContact from the noActionInputModifyContact action mapping that is within the struts-config-contact.xml file. I don't know if the public file has somehow been set as a default or what. I currently have nothing at all in the default struts-config.xml file.
Can anyone tell me why Struts is trying to find inputModifyContact in the public config file instead of the contact config file? Thanks.
Thanks for the suggestions, Sujatha, but my original problem remains. As far as your comments go 1) I use the . instead of a / to indicate that it is a tile instead of an action mapping. 2) I actually have this servlet mapping in my web.xml, I just didn't paste it in my post.
I think I have created my tiles-defs-contact.xml file incorrectly. I'm not sure if it is okay to reference pages from multiple modules in a single tiles-defs file. Here is the definition that my .inputModifyContact definition inherits from:
See how all the tiles in the base definition refer to a the public module except for the home.jsp page, which is in the contact module?
What's happening is that my first action (/noActionInputModifyContact) is using the contact module. It forwards to a jsp page that uses the html:form tag. The form tag is looking in the public module to find the action (/inputModifyContact) that it will submit to and it should be looking in the contact module. I think that I made a mistake in my tiles-defs-contact.xml file.
Any suggestions would be GREATLY appreciated. Thanks.
I figured it out. When I referenced /public/renderMenu.do in the .base definition, Struts changed the moduleConfig it was using from contact to public. I just had to insert the renderMenu action in my struts-config-contact.xml file and point the tiles-defs-contact.xml file's .base definition to /contact/renderMenu.do and everything worked perfectly.