You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2010/02/15 17:42:07 UTC

DO NOT REPLY [Bug 48498] 6.0.22RC: ArrayIndexOutOfBoundsException from Jasper when compilation error inside a CDATA block

https://issues.apache.org/bugzilla/show_bug.cgi?id=48498

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID

--- Comment #3 from Mark Thomas <ma...@apache.org> 2010-02-15 16:42:03 UTC ---
This is not a Tomcat but, but a bug in the SAX Parser provided by the JDK.
Local testing shows:
1.5.0_22_x64 - works
1.6.0_16_x64 - ArrayIndexOutOfBoundsException
1.7.0_b76_x64 - ArrayIndexOutOfBoundsException

The bug is that in LexicalHandler.startCDATA() the Locator points to the end of
the CDATA section rather than the start. This will always lead to misleading
JSP snippets any may result in an ArrayIndexOutOfBoundsException if the CDATA
block is close enough to the end of the JSP file.

I have reported the bug to Sun and am awaiting a public bug number. I'll update
this issue when I get it.

You can use Xerces 2.9.1 to override the default SAX Parser provided by the JDK
to work around this bug if required.

I looked at providing a work around in Tomcat but correctly handling the
behaviour of different JDKs with and without Xerces overriding was getting just
too messy to be worth while.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org