I have a Weblogic 10.3.3 installation and it seems to be having problems with recursive JSP tags. On the Internet, I found that some other people are experiencing the same problems ( here and here ), but there are no solutions. Some people believe that it is fixed in Weblogic 12 or works in 9, but I canβt confirm this.
Application built using Spring / Spring Roo / Apache Tiles / jspx. The displayed model class looks something like this:
public class Programme { private String name; private final List<Programme> programmes = new ArrayList<Programme>(); ...(getter/setter)... }
Then I have tagx like this:
<jsp:root xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:coursedataimport="urn:jsptagdir:/WEB-INF/tags/coursedataimport" version="2.0"> <jsp:output omit-xml-declaration="yes" /> <jsp:directive.attribute name="programme" type="package.Programme" required="true" rtexprvalue="true" /> <c:out value="${programme.name}" /> <ul> <c:forEach var="p" items="${programme.programmes}"> <li><coursedataimport:programme programme="${p}" /></li> </c:forEach> </ul> </jsp:root>
This does not work. When you request a page, the application container seems to crash (maybe a stack overflow, but I cannot find it in the logs), and the application context reloads. In Tomcat 7, it works great.
The exception shown is something like this, but I'm not sure if this is related (as it talks about the error):
[ServletContext @ 483389576 [application: app-ear-0 module: application path: / CONTEXT version specification: 2.5]] A problem occurred while serving the error page. org.springframework.web.util.NestedServletException: request processing failed; The nested exception is java.lang.ClassCastException: org.apache.tiles.ArrayStack at org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:894) in org.springframework.web.servlet.FrameworkServlet.doGet Framework .java: 779) in Level Above: Level Above: ...
Has anyone experienced these problems before or is anyone aware of a fix? Any advice on how to debug this, or how to bypass a recursive tag (since I want to display a tree, this is a bit of a challenge). Thanks in advance.
Miken source share