OOPS! Copy-paste busted. I meant to say, in your struts-config.xml: <plug-in className="edu.uga.itos.HobbsPlugIn"/>
:D Hubert (ps. what? you think I have all this in memory?) On 3/24/06, Hubert Rabago <[EMAIL PROTECTED]> wrote: > I wouldn't subclass ActionServlet just for this. Try doing this in a > Struts plugin instead: > > package edu.uga.itos; > public class HobbsPlugIn > implements PlugIn { > > public void init(ActionServlet servlet, ModuleConfig config) > throws ServletException { > > String actionList = ""; > ActionConfig[] actionConfigurations = config.findActionConfigs(); > > for(int i = 0; i < actionConfigurations.length; i++) { > actionList += actionConfigurations[i].getPath(); > } > servlet.getServletContext().setAttribute("actionList", actionList); > > } > > public void destroy() { > // does nothing > } > > } > > > and in your struts-config.xml: > > <plug-in className="edu.uga.itos.HobbsPlugIn"> > <set-property property="defnames" value="/WEB-INF/formdef.xml"/> > </plug-in> > > > Hubert > > On 3/24/06, Brantley Hobbs <[EMAIL PROTECTED]> wrote: > > > > This hint pointed me in the right direction. In case anyone is > > interested, this is how I did it: > > > > - Subclass ActionServlet > > - Override process() > > - Inside process, add the following code: > > > > if(this.getServletContext().getAttribute("actionList") == null) { > > String actionList = new String(); > > ModuleConfig theConfig = this.getModuleConfig(request); > > > > ActionConfig[] actionConfigurations = > > theConfig.findActionConfigs(); > > > > for(int i = 0; i < actionConfigurations.length; i++) { > > ActionConfig thisAction = actionConfigurations[i]; > > actionList += thisAction.getPath(); > > } > > this.getServletContext().setAttribute("actionList", actionList); > > } > > super.process(request, response); > > > > What this does is create a new context parameter called "actionList". > > It's a "/" separated string of the action paths. It's only called if > > the parameter doesn't exist, so if you're already using a parameter by > > that name it won't clobber it, and so that it is only called once (the > > first time any action is called). Of course, you now have to update > > your application descriptor to use your new actionservlet instead of the > > struts one. > > > > This is a quick and dirty proof-of-concept, but it is functional. If > > anyone has a better idea, please share. > > > > Cheers, and thanks Antonio! > > Brantley > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]