Pessoal estou com o seguinte problema usando tiles junto com o struts.
SOLUÇÃO
Eu tenho a seguinte configuração:
minhaApp/jsp/aBody.jsp - simples jsp.
minhaApp/jsp/bBody.jsp - simples jsp.
minhaApp/jsp/footer.jsp - simples jsp.
minhaApp/jsp/header.jsp - simples jsp.
além de minhaApp/jsp/layout.jsp com as seguintes configurações:
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<html>
<body>
<%-- include header --%>
<tiles:insert attribute="header"/>
<%-- include body --%>
<tiles:insert attribute="body"/>
<%-- include footer --%>
<tiles:insert attribute="footer"/>
</body>
</html>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html:link page="/a.do">A</html:link>
<html:link page="/b.do">B</html:link>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<!--
This is a blank Tiles definition file with a commented example.
-->
<tiles-definitions>
<definition name=".mainDef" path="/jsp/layout.jsp">
<put name="header" value="/jsp/header.jsp"/>
<put name="footer" value="/jsp/footer.jsp"/>
<put name="body" value="${body}"/>
</definition>
<definition name=".aDef" extends=".mainDef">
<put name="body" value="/jsp/aBody.jsp"/>
</definition>
<definition name=".bDef" extends=".mainDef">
<put name="body" value="/jsp/bBody.jsp"/>
</definition>
</tiles-definitions>
<action-mappings>
<action path="/a" type="org.apache.struts.actions.ForwardAction" parameter=".aDef"/>
<action path="/b" type="org.apache.struts.actions.ForwardAction" parameter=".bDef"/>
</action-mappings>
PROBLEMA:
Quando executo a minha aplicação, chamo a jsp ( inicio.jsp ), e ela me traz os respectivos links (A e B).
Quando eu clico em qualquer um dos links ( tanto A quanto B ) ela me traz a tela montada direitinho a partir do tiles, porém só me mostra na tela
aBody.jsp.
Eu preciso que ao clicar no link "B" a partir da jps ( inicio.jsp ) ela me traga bBody.jsp onde a mesma possui uma definition setada na tiles-def.xml.
O que pode ser este problema!???
obs.: Os arquivos xmls e os jars estão no diretorio correto p/ funcionamento:
/WEB-INF/*.xml
/WEB-INF/lib/*.jar
Refiz um exemplo que um Krinha aqui do guj indicou, mas ainda estou com o mesmo problema.