This action class is inspired by LookupDispatchAction, but it does not use property file and does not tie button caption to property name. Actually, it supports "parameter" to be compatible with original DispatchAction.
On the other hand, if you think that hashmap brings an unnecessary overhead, then sticking method name directly into request key is simpler. No hashmaps, and clickable images are elegantly supported, but one can spot handler method name right from the browser, and rearrange the names names. If you don't care for visible method names, you can check out my version based on idea of parsing "dotted" request key: http://issues.apache.org/bugzilla/attachment.cgi?id=15762 I first saw this parsing style on McGrady's website and borowed it from there. I am not pretending that this particuar idea is mine. The class from the link above has some comments here and there, and tries not to duplicate DispatchAction code. I think that this solution is compact and clean and could be a very good alternative/replacement to current DispatchAction, but I don't want to argue anymore on who stole from whom and why others can or cannot use it or why it cannot be included into Struts core. I needed a good dispatch action for my event-based library, I guess what I have now is good enough and allows to write well-structured code. Also, I get a level of indirection which hides actual method names from a user, so I will stick to what I have. Michael. On 10/18/05, Martin Gainty <[EMAIL PROTECTED]> wrote: > Michael > Without a doubt this is the most intuitive page I have ever seen > I take it the lack of support for orphaned 'parameter' action attribute is > overcome with inserting map events to method handlers via HashMap such as > this example > protected Map getKeyMethodMap() { > Map map = new HashMap(); > map.put(getInitKey()+"-ADD", "add"); > map.put(getInitKey()+"-DELETE", "delete"); > map.put(getInitKey()+"-CREATE", "create"); > map.put(getInitKey()+"-LOGIN", "login"); > return map; > } > //where methods are coded as > // Handler of Add button > public ActionForward add(ActionMapping mapping, > ActionForm form, > HttpServletRequest request, > HttpServletResponse response) > throws IOException, ServletException { > System.out.println("--> add"); > return mapping.findForward("addpage"); > } > Very insightful.. > Martin- > > ----- Original Message ----- > From: "Michael Jouravlev" <[EMAIL PROTECTED]> > To: "Struts Users Mailing List" <user@struts.apache.org> > Sent: Tuesday, October 18, 2005 12:09 PM > Subject: Re: I am getting frustrated with LookupDispatchAction > > > On 10/17/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > > Hi. I am using struts 1.2.7. My struts-config-xml file has the following: > > > > <action path="/mywizard1" > > name="wizardForm" > > scope="session" > > type="edu.nmsu.psl.userwizard.AddPSLUserWizardAction" > > input="/step1.jsp" > > validate="false" > > parameter="method"> > > <forward name="next" path="/step2.jsp"/> > > </action> > > > > my jsp has the following: > > <html:submit property="method"><bean:message > > key="button.next"/></html:submit> > > > > But I get the following error in tomcat: > > javax.servlet.ServletException: Request[/mywizard1] does not contain > > handler parameter named 'method'. > > > > Can someone save me from insanity? > > Try this instead: > http://struts.sourceforge.net/strutsdialogs/selectaction.html > You do not have to use Struts tags with it, just HTML. Works with > buttons, links and images. Consider it an improved > LookupDispatchAction. > > The library also allows you to build a robust wizard component. > > -- > Struts Dialogs > http://struts.sourceforge.net/strutsdialogs --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]