I have been playing around with JSP pre-compilation with Tomcat-4.1.24 (http://jakarta.apache.org/tomcat/tomcat-5.0-doc/jasper-howto.html) so I can check my JSP pages for compiler errors before deployment, but also to remove the delay that the first hit incurs.

The only problem with this is the <welcome-file> which has to point to a physical jsp page and not a servlet. The Struts in Action book suggests using a index.jsp page with a <logic:redirect> to a Welcome action, which is what I was doing.

I tried creating a servlet that would forward the request onto my Welcome action & servlet-mapping with a <url-pattern>/<url-pattern>, but this seemed to match any request and cause lots of problems.

So I dropped that idea and instead have used a filter...

<filter-mapping>
  <filter-name>WelcomeFilter</filter-name>
  <url-pattern>/</url-pattern>
</filter-mapping>

which works perfectly. It only fires for http://localhost/app/ or http://localhost/app and my filter forwards the request onto my Welcome action correctly.

I can now get rid of index.jsp and all my other JSPs are pre-compiled. I have also hidden all of my JSPs under the WEB-INF so they cannot be called directly and have to go through my Struts actions.


Jason Lea



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to