I actually have gotten this to work, but I don't understand why I had to do
what I did to accomplish this.
To review... I wanted to insert a layer of abstraction between
org.apache.struts.action.Action and my web application's various
instantiations of Action.
IE:
MyAction subclasses DHSAction, which inturn subclasses Action.
Originally DHSAction.java looked like this:
package dhs.struts.action;
import org.apache.struts.action.Action ;
public class DHSAction extends Action { }
Now, it looks like this:
package dhs.struts.action;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action ;
import org.apache.struts.action.ActionForm ;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.util.MessageResources;
public class DHSAction extends Action {
public ActionForward perform(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
return (mapping.findForward("success"));
}
}
I am not the sharpest Java tool in the shed, but I thought that public
classes and public methods would be visible to subclasses without having to
repeat the method signature.
I guess I don't understand all I know about this.
/\/\ark
>From: "Galbreath, Mark" <[EMAIL PROTECTED]>
>Reply-To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
>To: 'Struts Users Mailing List' <[EMAIL PROTECTED]>
>Subject: RE: Configuration Changes for Action extension??
>Date: Wed, 10 Apr 2002 16:53:55 -0400
>
>Sorry about the delay, Mark - I'm very busy today. I'll take a look at
>your
>code ASAP.
>
>Mark
>
>-----Original Message-----
>From: Struts Developer [mailto:[EMAIL PROTECTED]]
>Sent: Wednesday, April 10, 2002 2:57 PM
>To: [EMAIL PROTECTED]
>Subject: Configuration Changes for Action extension??
>
>
>I am still unable to get my application to work using a subclass of Action
>as my base action.
>
>If I create a BaseAction class that subclasses
>org.apache.struts.action.Action, what configuration changes (if any) do I
>need to make to web.xml, struts-config.xml, or elsewhere?
>
>I am running struts 1.0.2.
>
>Thanks...
>
>
> >From: "Struts Developer" <[EMAIL PROTECTED]>
> >Reply-To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
> >To: [EMAIL PROTECTED]
> >Subject: Really Dumb Newbie Question about Extending Action
> >Date: Wed, 10 Apr 2002 08:19:36 -0500
> >
> >Some days it just doesn't pay to chew through the leather straps and come
> >to
> >work...
> >
> >I would like to add a layer of inheritance between the
> >org.apache.struts.action.Action class and my application's Action
> >subclasses.
> >
> >IE: MyAction extends ORGAction extends Action.
> >
> >Seems simple enough, however when I set this up and run my applicaiton it
> >doesn't work. No error messages, no compile errors, no nothing. When
> >MyAction extends Action directly the application runs as expected and I
>get
> >the proper output and log messages, like so:
> >
> >==== start of copied log
> >[02.04.10 07:28:43:630 CDT] 7f9895eb WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Process servletName=action, urlPattern=*.do
> >[02.04.10 07:28:43:660 CDT] 7f9895eb WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Mapping for servlet 'action' = '*.do'
> >[02.04.10 07:28:59:923 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Processing a GET for /enterVisitorDisplay
> >[02.04.10 07:29:00:184 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Setting locale 'en_US'
> >[02.04.10 07:29:00:194 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Looking for ActionForm bean under attribute ''
> >[02.04.10 07:29:00:214 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Creating new ActionForm instance of class
> >'dhs.vcm.vis.form.SuccessContentForm'
> >[02.04.10 07:29:00:794 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Storing instance under attribute '' in scope 'session'
> >[02.04.10 07:29:00:804 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Populating bean properties from this request
> >[02.04.10 07:29:01:526 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Validating input form properties
> >[02.04.10 07:29:01:526 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Looking for Action instance for class
> >dhs.vcm.vis.action.EnterVisitorActionDisplay
> >[02.04.10 07:29:01:526 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Double checking for Action instance already there
> >[02.04.10 07:29:01:526 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Creating new Action instance
> >[02.04.10 07:29:01:706 CDT] 6572d5f7 SystemOut U
> >EnterVisitorActionDisplay : perform : entered
> >[02.04.10 07:29:01:826 CDT] 6572d5f7 SystemOut U
> >EnterVisitorActionDisplay : perform : posting message
> >[02.04.10 07:29:01:856 CDT] 6572d5f7 SystemOut U MessageRouting :
> >postMessageToQueue : enterVisitor
> >[02.04.10 07:29:01:866 CDT] 6572d5f7 SystemOut U
> >EnterVisitorActionDisplay : perform : leaving now
> >==== end of copied log
> >
> >When I have MyAction extending ORGAction, which extends Action I get
>this:
> >
> >==== start of copied log
> >[02.04.10 07:32:02:396 CDT] 7a45d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Process servletName=action, urlPattern=*.do
> >[02.04.10 07:32:02:416 CDT] 7a45d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Mapping for servlet 'action' = '*.do'
> >[02.04.10 07:32:35:794 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Processing a GET for /enterVisitorDisplay
> >[02.04.10 07:32:35:954 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Setting locale 'en_US'
> >[02.04.10 07:32:35:974 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Looking for ActionForm bean under attribute ''
> >[02.04.10 07:32:35:984 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Creating new ActionForm instance of class
> >'dhs.vcm.vis.form.SuccessContentForm'
> >[02.04.10 07:32:36:675 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Storing instance under attribute '' in scope 'session'
> >[02.04.10 07:32:36:685 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Populating bean properties from this request
> >[02.04.10 07:32:37:075 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Validating input form properties
> >[02.04.10 07:32:37:116 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Looking for Action instance for class
> >dhs.vcm.vis.action.EnterVisitorActionDisplay
> >[02.04.10 07:32:37:126 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Double checking for Action instance already there
> >[02.04.10 07:32:37:136 CDT] 6572d5f7 WebGroup I SRVE0091I: [Servlet
> >LOG]: action: Creating new Action instance
> >==== end of copied log
> >
> >What gives? I know I am doing something very basic wrong. I just can't
>see
> >it. Sigh.
> >
> >TIA,
> >Mark
> >
> >_________________________________________________________________
> >Join the world's largest e-mail service with MSN Hotmail.
> >http://www.hotmail.com
> >
> >
> >--
> >To unsubscribe, e-mail:
> ><mailto:[EMAIL PROTECTED]>
> >For additional commands, e-mail:
> ><mailto:[EMAIL PROTECTED]>
> >
>
>
>_________________________________________________________________
>Chat with friends online, try MSN Messenger: http://messenger.msn.com
>
>
>--
>To unsubscribe, e-mail:
><mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail:
><mailto:[EMAIL PROTECTED]>
>
>
>--
>To unsubscribe, e-mail:
><mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail:
><mailto:[EMAIL PROTECTED]>
>
_________________________________________________________________
Chat with friends online, try MSN Messenger: http://messenger.msn.com
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>