Author: kkolinko Date: Tue Mar 9 14:04:58 2010 New Revision: 920880 URL: http://svn.apache.org/viewvc?rev=920880&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48701 Add a system property to allow disabling enforcement of a requirement of JSP.5.3. The specification recommends, but does not require us to enforce it.
Modified: tomcat/trunk/java/org/apache/jasper/compiler/Generator.java tomcat/trunk/webapps/docs/config/systemprops.xml Modified: tomcat/trunk/java/org/apache/jasper/compiler/Generator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/Generator.java?rev=920880&r1=920879&r2=920880&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/jasper/compiler/Generator.java (original) +++ tomcat/trunk/java/org/apache/jasper/compiler/Generator.java Tue Mar 9 14:04:58 2010 @@ -78,6 +78,15 @@ class Generator { private static final String VAR_INSTANCEMANAGER = System.getProperty("org.apache.jasper.compiler.Generator.VAR_INSTANCEMANAGER", "_jsp_instancemanager"); + /* System property that controls if the requirement to have the object + * used in jsp:getProperty action to be previously "introduced" + * to the JSP processor (see JSP.5.3) is enforced. + */ + private static final boolean STRICT_GET_PROPERTY = Boolean.valueOf( + System.getProperty( + "org.apache.jasper.compiler.Generator.STRICT_GET_PROPERTY", + "true")).booleanValue(); + private ServletWriter out; private ArrayList<GenBuffer> methodsBuffered; @@ -1058,7 +1067,7 @@ class Generator { + ")_jspx_page_context.findAttribute(" + "\"" + name + "\"))." + methodName + "())));"); - } else if (varInfoNames.contains(name)) { + } else if (!STRICT_GET_PROPERTY || varInfoNames.contains(name)) { // The object is a custom action with an associated // VariableInfo entry for this name. // Get the class name and then introspect at runtime. Modified: tomcat/trunk/webapps/docs/config/systemprops.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/systemprops.xml?rev=920880&r1=920879&r2=920880&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/config/systemprops.xml (original) +++ tomcat/trunk/webapps/docs/config/systemprops.xml Tue Mar 9 14:04:58 2010 @@ -91,6 +91,14 @@ be used.</p> </property> + <property name="org.apache.jasper.compiler. Generator.STRICT_GET_PROPERTY"> + <p>If <code>true</code>, the requirement to have the object referenced in + <code>jsp:getProperty</code> action to be previously "introduced" + to the JSP processor, as specified in the chapter JSP.5.3 of JSP 2.0 and + later specifications, is enforced. If not specified, the specification + compliant default of <code>true</code> will be used.</p> + </property> + <property name="org.apache.jasper.compiler. Parser.STRICT_QUOTE_ESCAPING"> <p>If <code>false</code> the requirements for escaping quotes in JSP attributes will be relaxed so that an unescaped quote will not --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org