0

我正在将 Web 应用程序从 tomcat 迁移到 IBM Websphere 6.1。问题是当我导航到特定页面时出现此错误:

错误消息:JSPG0048E 页面无法使用 http:java.sun.com/jsp/jstl/core 的 taglib 验证器验证:

org.xml.sax.SAXParseException : 文件过早结束。

错误代码:500 目标 servlet:folder1/folder2/page_name.jsp 错误堆栈:com.ibm.ws.jsp.translator.JspTranslationException:JSPG0048E 页面无法使用 http:java.sun.com/jsp/jstl/ 的 taglib 验证器验证核 :

org.xml.sax.SAXParseException : 文件过早结束。

在 com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.validateTagLib(ValidateVisitor.java:1005) 在 com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.visitJspRootStart(ValidateVisitor.java:465) . . .

并且堆栈跟踪继续

jsp的代码行是

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

有人遇到过这个问题吗?

非常感谢西蒙

4

1 回答 1

0

这不是 taglib 的问题。发生的情况是,在编译 JSP 之前,WebSphere Application Server 通过使用 SAX 解析 JSP 来验证 JSP。解析可能比 Tomcat 更严格一些。

“文件过早结束”表明您对某些撇号或引号有问题,并且字符串永远不会终止。不幸的是,这些情况下的错误消息通常实际上是无用的。解决此类问题的最快方法通常是删除 JSP 代码并逐步将其输入以找出破坏 JSP 的部分。

于 2011-02-05T16:03:35.107 回答