Vishal Jhagadiawala created WW-4724:
---------------------------------------

             Summary: s:action tag with tile result causing StackOverflowError
                 Key: WW-4724
                 URL: https://issues.apache.org/jira/browse/WW-4724
             Project: Struts 2
          Issue Type: Bug
          Components: Core Tags
    Affects Versions: 2.3.30
         Environment: windows 10, tomcat 7
            Reporter: Vishal Jhagadiawala


struts action tag used within tiles framework 
goes in recursive loop and throws StackOverflowError as below. 
Opening jira ticket as it's reproduced in showcase sample application, 
The same usage worked in struts 2.2.1.1

below is  the tiles.xml , struts-tile.xml and layout.jsp as below. 

it throws java.lang.StackOverflowError: null at 
org.apache.catalina.core.ApplicationHttpRequest.getAttribute(ApplicationHttpRequest.java:230)
         at 
org.apache.catalina.core.ApplicationHttpRequest.getAttribute(ApplicationHttpRequest.java:230)
 at 

following is the source code. 
Layout.jsp
<html>    <head><title>Struts2 Showcase - <tiles:getAsString 
name="title"/></title></head><body>    <tiles:insertAttribute name="header"/>   
 <tiles:insertAttribute name="body"/> <p>Notice that this is a layout made in 
JSP</p>         <!-- Vishal- action tag which is causing issue with tiles 
result --> <s:action name="myTestAction" namespace="/tiles" 
executeResult="true" /></body></html>

tiles.xml
    <definition name="showcase.index" template="/WEB-INF/tiles/layout.jsp">     
   <put-attribute name="title" value="Tiles Showcase"/>        <put-attribute 
name="header" value="/WEB-INF/tiles/header.jsp"/>        <put-attribute 
name="body" value="/WEB-INF/tiles/body.jsp"/>    </definition>       <!-- 
Vishal-- my definition -->    <definition name="showcase.index.actionResult" 
template="/WEB-INF/tiles/actionTileResult.jsp">        <put-attribute 
name="title" value="Tiles Result from action"/>    </definition>    


struts-tiles.xml
<action name="index">            <result type="tiles">showcase.index</result>   
         <result name="success" type="tiles">showcase.index</result>        
</action>
       <!-- my test action to replicate the issue --> <action 
name="myTestAction">            <result 
type="tiles">showcase.index.actionResult</result>            <result 
name="success" type="tiles">showcase.index.actionResult</result>        
</action>  
actionTileResult.jsp
<tiles:importAttribute name="title" scope="request"/><html>    
<head><title>Action tile result <tiles:getAsString 
name="title"/></title></head><body> <p>Notice that this is a  
jsp</p></body></html>





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to