Hi,

I've been attempting this morning to get MMBase 1.7rc2 working as
a Servlet2.4/JSP2.0 compliant webapp. To accomplish this, I had to
turn of the JSP2.0 Expression Language for quite some JSP's, due
to the fact that both MMBase and the EL use the ${...} syntax.

Unfortunately, due to a Tomcat 'bug' (
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=27704), it is
impossible to do this using the jsp-property-group element in
web.xml. This means that MMBase will not run as a Servlet2.4/JSP2.0
compliant webapp in Tomcat. There is of course the possibility
of turning of the EL in all MMBase pages that use the ${...}
syntax but this 1) ties MMBase to a certain Servlet/JSP spec and
2) is a lot of work.

This is not really an MMBase problem, but I thought it was worth
mentioning it.

Regards,
Ronald Wildenberg.



P.S.: With regard to the bug in Tomcat:
The bug describes that HttpServletRequest.getServletPath() returns
the url-mapping of a matching jsp-property-group instead of the
actual servlet path.

This is a problem in 'org.mmbase.applications.editwizard.Config',
line 616 (1.7rc2) where the code 'request.getServletPath()' should
return a servlet path, but may return a jsp-property-group
url-mapping. Suppose for example you wish to turn off the EL for
all JSP's in the mmbase directory of your webapp (web.xml fragment):
<jsp-property-group>
   <url-pattern>/mmbase/*</url-pattern>
   <el-ignored>true</el-ignored>
</jsp-property-group>

The request for /mmbase/edit/wizard/jsp/list.jsp will eventually
call 'request.getServletPath()' in the Config class, that will return
'/mmbase' instead of '/mmbase/edit/wizard/jsp/list.jsp'.

Reply via email to