I don't think you can use a tiles definition in <forward path="{xxx}"/>. You
need to specify a context-relative path to an action -- in other words, a
URL. You could say <forward path="/register.success.jsp"/>, then include the
following in /register.success.jsp:

<%@ taglib uri="/WEB-INF/tiles.tld" prefix="tiles" %>
<tiles:insert definition="register.success"/>

-----Original Message-----
From: Struts Newsgroup [mailto:@[EMAIL PROTECTED]]
Sent: Friday, March 29, 2002 8:40 PM
To: [EMAIL PROTECTED]
Subject: Weird problem with tiles and struts forward.


Subject: Weird problem with tiles and struts forward.
From: "Jack Gao" <[EMAIL PROTECTED]>
 ===
Hi, List

I'm new with this struts and tiles issues.

My problem is: when define a jsp page in struts-config.xml to forward to if
success or failed, it works fine. But if I jump to tiles, and forward to a
definition, I keep to get servlet exception.

My definition xml file has a declare like this:

  <definition name="register.success" extends="mainLayout">
    <put name="body"   value="/success.jsp" />
  </definition>


And in my struts-config.xml I delcare like this:

    <action    path="/register"
               type="xxx.xxx.xxx.RegisterAction"
               name="registerForm"
              scope="request"
           validate="false">
      <forward name="success"              path="register.success"/>
      <forward name="failure"              path="register.failure"/>
    </action>

The mainLayout works fine, and I got exception when it forward to next page.

java.lang.IllegalArgumentException: Path register.success does not start
with a "/" character
        at
org.apache.catalina.core.ApplicationContext.getRequestDispatcher(Application
Context.java:570)
        at
org.apache.catalina.core.ApplicationContextFacade.getRequestDispatcher(Appli
cationContextFacade.java:174)
        at
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:96
5)
        at
org.apache.struts.action.RequestProcessor.processActionForward(RequestProces
sor.java:408)
        at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:269)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1109)
        at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:470)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        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
filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:
170)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:213)
        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.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:2343)
        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:
1012)
        at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107
)
        at java.lang.Thread.run(Thread.java:484)


Any idea?

Thanks a lot!

Jack




--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to