Re: Example of what I mean by problem when Action chaining
Vic Cekvenich <[email protected]> Mon, 02 Jun 2003 20:56:29 -0400
| Newsgroups | gmane.comp.java.mvc.devel |
|---|---|
| Organization | baseBeans Engineering |
| Message-ID | <[email protected]> |
Of course this fixed it: <forward name="Saved" path="/do/chapterAction?Dispatch=edit" redirect = "true" /> but... as you say, be aware. .V (I would almost argue it's a bug..... but if it makes sense to you). Vic Cekvenich wrote: > I am able to reproduce your issue using your code. I was not aware > that this was an issue. > Excellent and concise example you posted. > What is your proposed solution? > ..V > > Rick Reumann wrote: > >> I'll try to be brief as possible here. I put up a war file at >> http://www.reumann.net/reumann/struts/actionProblem.html that you can >> download and place in your webapps directory and see an example of how >> there are problems to consider when you forward from one Action to >> another >> (Action chaining this is called- lot about it on the Struts list). >> >> The idea that you can build navigation without concern about your >> underlying >> FormBeans only 'definitely' holds true when you are not forwarding to >> another >> Action. When you forward to another Action there are things to >> consider. I >> started the "My Headache" thread because of a situation that came when >> forwarding from one Action to another Action and I mentioned that if you >> could avoid this you are better off. >> If you run the action_problem app at the link above you'll see just one >> very small example- not the exact example I ran into but something >> similar. If you don't feel like looking at the war here is a brief >> summary >> of the situation: >> >> Two form beans: >> >> BookBean >> private String title; >> private String description; >> private String bookNote; >> >> ChapterBean >> private String title; >> private String description; >> private String content; >> >> >> Two Dispatch Actions >> BookAction >> ChapterAction >> >> 1) On bookForm.jsp to fill out title, description, bookNote and submit >> will save. Form submits to BookAction >> >> 2) BookAction has dispatch "save" and does the save, but now you want >> the >> user to fill out the ChapterBean and save that you so you have the >> BookAction foward to the ChapterAction with dispatch "edit" >> >> 3) Now you are on the editChapter.jsp but NOTICE the title and >> description >> properties - they are filled in with the Book title and Book >> description! >> This makes sense though since the Request object is propogated along >> from >> one Action to the next when your forward to another Action (and >> ChapterBean has a title and description property as well). >> >> >> So the point I'm just trying to make is there are things to watch out >> for >> when Action chaining. Most agree that Action chaining serves it's >> purpose >> when you have one large FormBean that you need populated over several >> pages (ie- imagine online Tax Form preperations). However, in most >> circumstances it seems best to avoid forwarding one Action to another >> Action. >> >> >> My "headache' example was much more complex than the above example >> but it >> basically was a result of forwarding from one Action to another >> Action. ( >> I had a nice nested beans detail display page and a link to "add a Task" >> from that page. When you clicked on the link to "add Task" you go >> through >> "taskAction" and when finished after Save you'd forward to the >> "detailAction" to bring you back to the detail page. Well when that >> occured Request properties that were on the taskForm.jsp were setting >> properties of other beans on the detail page since they had similar >> names). >> >> >> >> >> > -- Vic Cekvenich, Struts Instructor, 1-800-917-JAVA Advanced <a href ="baseBeans.com">Struts Training</a> and project recovery in North East. Open Source <a href ="baseBeans.com">Content Management</a> basicPortal sofware Best practice<a href ="baseBeans.com">Struts Support</a> v.1.1 helper ScafflodingXPress