升级tomcat后,访问jsp报错500,错误信息如下:
org.apache.jasper.JasperException: … … The JSP specification requires that an attribute name is preceded by whitespace
问题原因:Tomcat7增加了个参数 org.apache.jasper.compiler.Parser.STRICT_WHITESPACE ,表示是否严格校验这种空格,默认为true,问了兼容之前的jsp,在tomcat/conf/catalina.properties中设置org.apache.jasper.compiler.Parser.STRICT_WHITESPACE=false 来兼容
另可能有2个EL表达式的错误,如"${new.title}"因包含关键字new就会导致解析出错,
解决方法:修改tomcat属性,忽略对EL表达式的关键字检查。修改$CATALINA_BASE/conf/catalina.properties 文件,添加 org.apache.el.parser.SKIP_IDENTIFIER_CHECK=true 选项。
value="<%=view.getItems("SendAcctList")%>"因为双引号包含双引号,可能导致解析出错
解决方法:可以修改为单引号包含双引号,也可以修改tomcat属性,org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false 来跳过严格的引号校验
org.apache.jasper.JasperException: … … The JSP specification requires that an attribute name is preceded by whitespace
问题原因:Tomcat7增加了个参数 org.apache.jasper.compiler.Parser.STRICT_WHITESPACE ,表示是否严格校验这种空格,默认为true,问了兼容之前的jsp,在tomcat/conf/catalina.properties中设置org.apache.jasper.compiler.Parser.STRICT_WHITESPACE=false 来兼容
另可能有2个EL表达式的错误,如"${new.title}"因包含关键字new就会导致解析出错,
解决方法:修改tomcat属性,忽略对EL表达式的关键字检查。修改$CATALINA_BASE/conf/catalina.properties 文件,添加 org.apache.el.parser.SKIP_IDENTIFIER_CHECK=true 选项。
value="<%=view.getItems("SendAcctList")%>"因为双引号包含双引号,可能导致解析出错
解决方法:可以修改为单引号包含双引号,也可以修改tomcat属性,org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false 来跳过严格的引号校验
本文介绍了升级Tomcat后访问JSP页面出现500错误的问题及解决办法,包括调整Tomcat配置文件catalina.properties中的属性org.apache.jasper.compiler.Parser.STRICT_WHITESPACE和org.apache.el.parser.SKIP_IDENTIFIER_CHECK,以及org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING,以解决由EL表达式关键字和引号引起的解析错误。
3898

被折叠的 条评论
为什么被折叠?



