« Return to Thread: OGNL and JSP 2.1 - are there plans to fix?

Re: OGNL and JSP 2.1 - are there plans to fix?

by mraible :: Rate this Message:

Reply to Author | View in Thread

Here's a (possibly better) solution:

    <jsp-config>
      <jsp-property-group>
        <url-pattern>*.jsp</url-pattern>
        <deferred-syntax-allowed-as-literal>true</deferred-syntax-allowed-as-literal>
      </jsp-property-group>
    </jsp-config>

Information found at http://today.java.net/lpt/a/272#backwards-compatibility.

Caveats: you need a servlet 2.5 XSD at the top of your web.xml and it only seems to work in Tomcat 6.0.13, not Jetty 6.1.5.

Matt

mraible wrote:
Are there any plans to fix OGNL's # (or provide a workaround) for JSP 2.1?

From the bottom of http://cwiki.apache.org/WW/ognl.html:

Under JSP 2.1 the # character is now used by the JSP EL.

This may cause problems with some applications that use the OGNL # operator.

One quick-fix is to disable the JSP EL in a JSP 2.1 container (like GlassFish) by adding a jsp-config element to the web.xml

  <jsp-config>
    <jsp-property-group>
      <url-pattern>*.jsp</url-pattern>
      <el-ignored>true</el-ignored>
    </jsp-property-group>
  </jsp-config>

Now that MyFaces 1.2 is out, I'd like to try mixing Struts 2 and JSF in a single application. I can use Facelets for JSF, but it might make sense to use JSP for both of them so there's only one view technology. To do that, I need to use JSP 2.1, which looks like it has issues with OGNL. Or maybe it's better to use different extensions for Struts 2 vs. JSF pages and turn off EL for JSF pages?

Does the Struts JSF Plugin work with a JSF 1.2 implementation or does it not care?

Thanks,

Matt

 « Return to Thread: OGNL and JSP 2.1 - are there plans to fix?