Oi, pessoal!
Sou novata em JavaEE e preciso da ajuda de vcs. Estou estudando um livro de struts e, ao chegar na parte que usa Tiles, não estou conseguindo fazer o Tiles funcionar. A seguinte exceção é mostrada no browser:
java.lang.IllegalArgumentException: Path .page.Welcome does not start with a "/" character
Não faço idéia do que pode estar errado, por isso, vou descrever de que maneira o projeto está "montado":
No diretório WEB_INF estão, dentre outros, os arquivos struts-config.xml, tiles-defs.xml, struts-tiles.tld e tiles.tld.
Em struts-config:
<global-forwards>
<forward name="welcome" path="/welcome.do"/>
</global-forwards>
<action-mappings>
<action name="/welcome" forward=".page.Welcome"/>
</action-mappings>
Em tiles-defs:
<tiles-definitions>
<definition name =".page.Welcome" path="/tiles/layouts/AppLayout.jsp">
<put name="header" value="/tiles/header.jsp"/>
<put name="footer" value="/tiles/footer.jsp"/>
<put name="menu" value="/tiles/menu.jsp"/>
<put name="body" value="/tiles/body.jsp"/>
</definition>
Em web.xml:
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
***
<init-param>
<param-name>definitions-config</param-name>
<param-value>/WEB-INF/tiles-defs.xml</param-value>
</init-param>
<init-param>
<param-name>definitions-debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>definitions-parser-details</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>definitions-parser-validate</param-name>
<param-value>true</param-value>
</init-param>
***
<taglib>
<taglib-uri>/tags/tiles</taglib-uri>
<taglib-location>/WEB-INF/tiles.tld</taglib-location>
</taglib>
<%@ taglib uri="/tags/tiles" prefix="tiles" %>
<html>
<head>
<html:base/>
<link rel = "stylesheet" href = "<html:rewrite page='/pages/topo.css'/> " type = "text/css">
</head>
<table width="100%" cellspacing="5">
<tr>
<td colspan="2"><tiles:get name="header"/> </td>
</tr>
<tr>
<td width="140"><tiles:get name="menu"/></td>
<td valign="top"><tiles:get name="body"/></td>
</tr>
<tr>
<td colspan="2"><tiles:get name="footer"/></td>
</tr>
</table>
</body>
</html>
Desde já agradeço qualquer ajuda.
[]'s! :wink: