On 3/1/2012 9:50 AM, Jess Holle wrote:
In some cases we are seeing:
2012-03-01 18:43:55,624 ERROR [ajp-bio-9920-exec-2]
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/PDMPJL100].[jsp]
- Servlet.service() for servlet [jsp] in context with path
[/PDMPJL100] threw exception [wt.util.WTRuntimeException:
org.apache.jasper.JasperException: Unable to compile class for JSP;
nested exception is:
org.apache.jasper.JasperException: Unable to compile class
for JSP] with root cause
java.lang.ArrayIndexOutOfBoundsException: 67
at
org.eclipse.jdt.internal.compiler.codegen.CodeStream.isDefinitelyAssigned(CodeStream.java:4548)
whereas in others for the same JSPs, tags, etc (as best we can tell)
we're not.
This is with Tomcat 7.0.23 and thus ecj 3.7. Are there known issues
in this regard with ecj 3.7? Are they addressed by 3.7.1? Is there a
reasonable way to obtain and try a newer ecj.jar? [I couldn't find one.]
Sorry for the noise on this part of my post -- we've found the issue
here. Someone stuck an old ecj jar into lib in these cases!
I've seen some other odd behavior with the latest Tomcat 6 (also using
3.7) -- where it will compile a given JSP page fine most of the time,
but in others (for exactly the same JSP and tags with no changes) will
produce the dreaded method too big (>65K) error. This is maddening
when nothing has changed -- the compiler should produce the same
results in any case. This particular issue is hard enough to
reproduce that I've not had a chance to try it with 3.7.1.
I'm still wondering about this issue, though...
--
Jess Holle