Hi all Has anyone had a problem with JSTL becoming too complex? Here's the story: We are a news site that's migrating to JSTL for complex news stories. Now, you can imagine that a story contains a number of paragraphs which in return contain images, which themselves contain files, which... It all gets pretty complex, with objects containing ArrayLists of other objects which contain ArrayLists of objects etc. etc.
Anyway, I'm trying to build all this with a complex test story, but if my JSP template gets too complex, this is what happens: javax.servlet.ServletException: (class: org/apache/jsp/storytest$jsp, method: _jspService signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/se rvlet/http/HttpServletResponse;)V) Illegal target of jump or branch at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:485) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:683) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch er.java:574) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher .java:497) at ch.xobix.layouttool.module.common.X2Modul_Story.generateContent(X2Modul_Stor y.java:300) at ch.xobix.layouttool.module.common.X2Modul_Base.generateOnlineContentAndPrint (X2Modul_Base.java:48) at ch.xobix.databean.layout.X2PageScript.renderAndWrite(X2PageScript.java:159) at ch.xobix.layouttool.X2PageViewer.view(X2PageViewer.java:30) at ch.xobix.basement.X2Dispatcher.doGet(X2Dispatcher.java:244) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:243) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 66) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:190) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 66) at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:2 46) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 64) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180 ) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 66) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 64) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170 ) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 64) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 64) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :174) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5 66) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java: 1017) at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1115 ) at java.lang.Thread.run(Thread.java:536) When I have a working template, I can copy a <c:forEach> loop that works, and then the whole thing crashes. If I take it out again, it works. So, from my (perhaps naive) point of view, JSTL can only handle templates up to a certain complexity... is that true? I would hate to hear a "yes"... If anyone is interested, I'll gladly send source code, but my template is around 35K... Thanks & best regards, Eric -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>