struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lukas Österreicher <lukas.oesterreic...@inode.at>
Subject Problem handling error forwards
Date Tue, 03 Feb 2004 09:35:09 GMT
Hello

For some time now I have had a problem when dealing with errors and the resulting different
forwards:

When action3 generates an error (for instance in the form validator) and forwards
to action2 to deal with it (display it) but this action2 deals with errors and forwards
to action1 then the jsp for action1 is displayed, but not the jsp for action2.

(Those three actions are a process sequence, action1 prepares a page
to enter some data, action2 (and form2) check that data and allow entering
additional data and send it to action3 where the data is saved.)

Why is this?

Here the actions for details:

    <!-- specify the directory from which to imort sound files -->
    <action   path="/specifysounddirectory"
              type="net.morkeleb.yarf.action.SpecifySoundDirectoryAction"
              name="addTracksForm"
              scope="request"
              validate="false"
              input=".specifysounddir">
      <forward name="success"              path=".specifysounddir"/>
      <forward name="failure"              path=".specifysounddir"/>
    </action>

    <!-- display which files are available in the selected directory
          and allow to select which to import -->    
    <action   path="/listaddtracks"
              type="net.morkeleb.yarf.action.ListAddTracksAction"
              name="addTracksForm"
              scope="request"
              validate="true"
              input=".specifysounddir">
      <forward name="success"              path=".listaddtracks"/>
      <forward name="failure"              path=".specifysounddir"/>
    </action>

    <!-- import selected files -->
    <action   path="/addtracks"
              type="net.morkeleb.yarf.action.AddTracksAction"
              name="addTracksForm"
              scope="request"
              validate="true"
              input="/listaddtracks.do">
      <forward name="success"              path="/listtracks.do"/>
      <forward name="failure"              path="/listaddtracks.do"/>
    </action>
  </action-mappings>

As you see action3 (addtracks) forwards to /listaddtracks.do
(it has to be the action because data the avaiable tracks
have to be prepared for display). If it would forward to the
.listaddtracks tile the error would be correctly displayed
in action2 but the avaiable tracks would not be prepared.

As addtracks forwards to listaddtracks with an error
(only when it occours ofcourse) listaddtracks somehow
recognizes that existing error and thinks: we have an
error, so I have to forward to .specifysounddir to
display it.

Can you help me on this?

Regards,
Lukas Österreicher



---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


Mime
View raw message