Take a look at the RequestProcessor class source (pre-1.3 Struts, I'm
looking at 1.2.4 at the moment). Look for the process() method. This
is, in a high-level way, where most of the work occurs in the request
processing cycle (at least the part that you are likely to be concerned
with). Specifically, near the end you'll see this:
// Call the Action instance itself
ActionForward forward = processActionPerform(request, response,
action, form, mapping);
As the comment pretty clearly states, this is where the execute() that
you as the app developer write is called. The forward you return is
grabbed. Next, you'll see this:
// Process the returned ActionForward instance
processForwardConfig(request, response, forward);
The processForwarConfig() is where the forward (or redirect) occurs. In
that method, forward.getPath() is called, which returns the path to
forward to, based on the configuration read in from struts-config.xml
when ActionServlet started up, and RequestDispatcher is used to forward
(or response.sendRedirect() for a redirect).
Have I answered the question, or did I not understand what you were asking?
Frank
devosc wrote:
Hi,
How does Java/Struts determine when/how to render a page fro the
current findForward path ? For some reason I cant seem to determine
how the RequestDispatcher is directly invoking the this target path
without failing in the processMapping method of RequestProcessor ?
For example, in a demo, its flow is index.html->index.jsp--> forward
to /main --> action findforward --> main.jsp, but I cant see how it
knows when/what to do with path=/main.jsp
--
devosc
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
.
--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM: fzammetti
Yahoo: fzammetti
MSN: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]