Your forward config to another dispatch action should contain the
"method" parameter. For instance,

<forward  name="edit"
              path="/Configuration/Attributes/GoEditAttribute.do?method=edit"/>
<forward  name="edit"
              path="/Configuration/Attributes/GoEditAttribute.do?method=update"/>

I hope I interpreted your problem correctly.

On Mon, 14 Jun 2004 10:20:21 +0200, Cosyns Xavier <[EMAIL PROTECTED]> wrote:
> 
> >I've used a similar approach but mine is working fine.
> >what does your struts-config.xml look like?
> 
> Hi,
> Here is my struts-config, ShowAttributesList.do is my preaction before
> displayin the list of objects, then we select one of the list and
> execute the gocreateattribute action, and lastly we have the
> CreateAttribute action which will reforward to the ShowAttributesList on
> successful creation. The problem is that both actions are
> DispatchActions with the same parameter. As explained in my former mail
> I do not want to break that for different reasons.
> 
> Is there something I am missing?
> 
>        <action
>       path="/Configuration/Attributes/ShowAttributesList"
>       name="objectTypeForm"
>       scope="request"
>         parameter="fxpAction"
>       type="fxp.web.actions.configuration.attributes.AttributesLister"
>       validate="false">
>                <forward
>                        name="showList"
> 
> path="/configuration/attributes/manageAttributesList.jsp"/>
>                <forward
>                        name="edit"
> 
> path="/Configuration/Attributes/GoEditAttribute.do"/>
>                <forward
>                        name="delete"
> 
> path="/Configuration/Attributes/GoDeleteAttribute.do"/>
>                <forward
>                        name="create"
> 
> path="/Configuration/Attributes/GoCreateAttribute.do"/>
>      </action>
> 
>        <action
>       path="/Configuration/Attributes/GoCreateAttribute"
>       parameter="/configuration/attributes/createAttribute.jsp"
>           input="/Configuration/Attributes/ShowAttributesList.do"
>       name="objectTypeForm"
>       scope="request"
>       type="fxp.web.actions.configuration.attributes.GoCreateAttribute"
>       validate="false" />
> 
>        <action
>       path="/Configuration/Attributes/CreateAttribute"
>         input="/configuration/attributes/createAttribute.jsp"
>       name="createAttributeForm"
>       scope="request"
>       type="fxp.web.actions.configuration.attributes.CreateAttribute"
>         parameter="fxpAction"
>       validate="true">
>                <forward
>                        name="showList"
> 
> path="/Configuration/Attributes/ShowAttributesList.do"/>
>                <forward
>                        name="create"
> 
> path="/configuration/attributes/createAttribute.jsp"/>
>    </action>
> 
> 
> 
> 
> >On Fri, 11 Jun 2004 11:26:54 +0200, Cosyns Xavier
> ><[EMAIL PROTECTED]> wrote:
> >>
> >> Hi,
> >>
> >> I run into problems with chaining dispatchactions using the same
> >> parameter 'method'. We do use the same parameter name for all our
> >> dispatchaction for consistency reasons throughout the whole
> >> application, easier to maintain and using generique javascript
> >> functions.
> >>
> >> The problem we ran into is that we have a first jsp page showing a
> >> list of items, and we achieve that by prepopulating with a
> >> dispatchaction some beans to be used in the jsp. Then we can go to a
> >> 'edit' page and when we submit we have another
> >dispatchaction with an
> >> 'update' method that should reforward on success to the first
> >> prepoplation dispatchaction. The problem is that forwarding
> >calls the
> >> 'update' method from the prepopulation dispatchaction, which
> >does not
> >> exist and should not exist. Redirecting the action does not
> >work as I
> >> lose a request parameter that permits to prepopulate the
> >right list of
> >> products on my first page (It will display the default list, not
> >> necesarely the list where he started an update upon).
> >>
> >> So, our action&page flow is the following:
> >> Prepopulation Action --> list.jsp --> detail (product Action) -->
> >> edit.jsp --> update (product action) --> Prepopulation Action.
> >>
> >> Only options I see,
> >> I could not use dispatchactions, but then I would have so many
> >> different action classes that are so closely related and
> >using common
> >> methods. I could break our 'inhouse rule' of using one global
> >> parameter name for dispatchactions, but it would not be
> >clean to have
> >> an exception to the rule, so I'm against that option. I could put an
> >> object in the session and in my prepopulation action testing for it,
> >> and if it exist showing the right list of products. But again, it's
> >> simulating a request parameter using a session, which is not a great
> >> design. None of the three options above are good design to me, so I
> >> would prefer another way.
> >>
> >> What I would need is more something like the 'unspecified'
> >method from
> >> dispatchactions that would also be called if the given
> >parameter does
> >> not match any of the methods of the dispatchaction. From my tests,
> >> it's not the case,  the 'unspecified' method is called when the
> >> 'parameter' does not exist in the request and not when it does not
> >> match anny methods (my case). Or else, I would need a patameter
> >> 'overriding' mechanism, something where the dispatchaction
> >first do a
> >> request.getAttribute('method') and if this one does not
> >exist performs
> >> a request.getParameter('method'). But I have not found how
> >to achieve
> >> one of boths terchniques.
> >>
> >> I'm sure someone else ran into this issue too, and I am aware that
> >> chaining actions is not a recommended design, but it's not a
> >> bussinesslogic problem, the issues addressed here only concerns
> >> presentation. Or did I missed something?
> >>
> >> Thanks very much for your ideas,
> >>
> >> Cosyns Xavier,
> >> ______________________________
> >> [EMAIL PROTECTED]
> >>
> >> InveO Consulting & Development
> >> Av. E. de Beco 112
> >> 1050 Ixelles
> >> Tel: +32 2 648 74 32
> >> Fax: +32 2 648 87 64
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>

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

Reply via email to