JSP:在Tomcat中预期的引用符号,但在WebSphere中不是

时间:2015-08-19 14:59:42

标签: jsp tomcat websphere-8

我在我的应用程序中使用struts2,当我在Tomcat中运行我的应用程序时出现以下错误 org.apache.jasper.JasperException:/myapp/testReview.jsp(第29行,第45列)引号符号预期

第29行:<s:iterator value="testSummaryList" status=stat> <s:iterator> <tr> <td><s:property value="value" /></td> <td><s:property value="key" /></td> </tr> </s:iterator> </s:iterator> 在WebSphere中部署应用程序时,相同的代码工作正常。 这解决了Tomcat中的错误        状态= “STAT”

这与Tomcat JSP编译器有关吗?

1 个答案:

答案 0 :(得分:1)

不,这与解析JSTL(XML)的方式有关:

http://www.herongyang.com/JSP/JSTL-Overview-General-Syntax-of-JSTL-Tags.html

使用不带引号的status属性的值会使其无效,因此在解析文件时会出现JasperException。

堆栈跟踪的其余部分可能如下所示:

org.apache.jasper.JasperException: /myapp/testReview.jsp (line: 29, column: 45) quote symbol expected
org.apache.jasper.compiler.DefaultErrorHandler.jsp Error(DefaultErrorHandler.java:40)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:88)
org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:198)
org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:148)
org.apache.jasper.compiler.Parser.parseUseBean(Parser.java:929)
org.apache.jasper.compiler.Parser.parseStandardAction(Parser.java:1112)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1421)
org.apache.jasper.compiler.Parser.parse(Parser.java:130)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:185)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)

所以你应该看到Parser类抛出了异常(尽管这是JSP编译过程的一部分)。