I've been trying to deploy a grails webapp under Resin for a whole day now. I was finally able to get it working, but it brings up an interesting behavior for mod_caucho.
Grails URLs looks like this: /controller/action/1/pathinfo?params I am using Apache+Resin to do this. Under normal circumstances (ie. running a servlet engine by itself), Resin would have no problem running grails and requests are being processed by Resin directly. However, under Apache+Resin setup, I am getting 404's. The reason is because mod_caucho is not recognizing the grail URL as an URL that needs to be processed by Resin. Thus, Apache simply considers it a physical directory and tries to access the file system. The result is a 404. Here's the thing. Grails' web.xml has filter mappings for the url- pattern of "/*". One of the filters, the UrlMapper, will actually process the URL and then dispatch the request to the proper controller and action to process the request. However, there is no servlet mapping that is mapped to pass all "/" requests to resin for processing. Thus, mod_caucho simply assumes that requests should not be passed to resin for processing. To get this working, I actually added a "SetHandler caucho-request" to my .htaccess file under the webapp directory. Now, the requests are passed over to resin for processing. Should mod_caucho be enhanced to also look at filter mappings in the web.xml? If there exists filters mapped to "/*", then mod_caucho should delegate the request to resin automatically. I'm not sure if this is a good idea, but I wonder if this should be the case (or a setting to enable). -Chris _______________________________________________ resin-interest mailing list email@example.com http://maillist.caucho.com/mailman/listinfo/resin-interest