DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22503>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22503 Tomcat4.0.6 can't parse a XML format JSP file encoding Summary: Tomcat4.0.6 can't parse a XML format JSP file encoding Product: Tomcat 4 Version: 4.0.6 Final Platform: All OS/Version: All Status: NEW Severity: Normal Priority: Other Component: Jasper AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Tomcat5 is able to parse a XML format JSP file encoding, but Tomcat4 isn't. I thought org.xml.sax.InputSource didn't instantiate with java.io.InputStream. So, I read Jasper source and made two patches as follows. jakarta-tomcat-4.0.6-src/jasper/src/share/org/apache/jasper/compiler/ParserController.java jakarta-tomcat-4.0.6-src/jasper/src/share/org/apache/jasper/compiler/ParserXJspSax.java --- original/ParserController.java Sun Aug 17 17:15:53 2003 +++ ParserController.java Sun Aug 17 17:17:37 2003 @@ -209,7 +209,7 @@ reader = getReader(absFileName, encoding); jspHandler.setDefault(isXml); if (isXml) { - (new ParserXJspSax(absFileName, reader, jspHandler)).parse(); + (new ParserXJspSax(absFileName, getStream(absFileName), jspHand ler)).parse(); } else { (new Parser(ctxt, absFileName, encoding, reader, jspHandler)).p arse(); } @@ -443,6 +443,16 @@ } } + private InputStream getStream(String file) + throws FileNotFoundException + { + InputStream in; + in = ctxt.getResourceAsStream(file); + if (in == null) { + throw new FileNotFoundException(file); + } + return in; + } /* NOT COMPILED private String getFileContent(String fileName) { InputStream inStream; ################################################################################# --- original/ParserXJspSax.java Sun Aug 17 17:16:01 2003 +++ ParserXJspSax.java Sun Aug 17 17:17:14 2003 @@ -136,6 +136,15 @@ this.jspHandler = jspHandler; } + public ParserXJspSax(String filePath, + InputStream stream, + ParseEventListener jspHandler) + { + this.filePath = filePath; + this.is = new InputSource(stream); + this.jspHandler = jspHandler; + } + //********************************************************************* // Parse --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]