RE: [Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-23 Thread Mathew, Manoj
Hi Mark

I had a similar situation adn what i did is i made a the parent action form an 
Abstract class. and say i have twi action forms form1 and form 2 which extends this 
Abstract class. Then i have different getData() for these two form to populate the 
form. So i can simple use the getters and setters of the abstract class to set the 
common properties.

I hope this is what you are looking for

thank you
Manoj Mathew
(It took me 30  years to look this good :) )


-Original Message-
From: Mark Jones [mailto:[EMAIL PROTECTED]
Sent: Saturday, February 21, 2004 10:41 PM
To: Struts User
Subject: [Newbie] Is it worth subclassing your own Action and ActionForm
classes to attain code re-use?


My application allows a user to make various different types of bookings for
a (fictional!!!) hospital and logs them in a database. Each type of booking
has a set of common properties but also different ones depending on the type
of booking being made.

I have divided my classes into a BookingAction and BookingActionForm
superclass and subclasses (such as AmbulanceBookingAction and
AmbulanceBookingActionForm) because I anticipate creating other subtypes of
BookingAction that use the same properties in the BookingAction class but
not in the AmbulanceBookingAction subclass. This initially seemed to me to
be in keeping with programming for code re-use and extensibility.

My problem with this is, if a user submits a form which posts its data via
the ActionServlet to the AmbulanceBookingAction subclass, how would I ensure
the BookingAction class did its stuff? Would it be better / easier to use
separate, non-derived (from my superclasses) Actions and ActionForms to
handle each type of booking and not subclass BookingAction and
BookingActionForm (even though I would be repeating the some of the same
properties common to each different type of booking)?

I am concerned, though, not to lose points for not reusing code. It just
seems to me, though, that trying to divvy the handling of the form data via
inheritance is too complicated and / or unnecessary.

In what circumstances might you want to subclass your own Action class and,
if you did, how would you handle/inherit the form data? Would you just use
different subclasses of your Action but just one ActionForm for each Action?

What is the best way for me to implement this problem? (Or have I answered
my own question?! ;0) )

Thanks for indulging me!

Mark


-
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]



Re: [Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-23 Thread Raphaël di Cicco
I use an ActionBaseForm where I put mapped getters/setters for the
properties so every sub-Form can use it without coding anything.

- Original Message - 
From: Mark Jones [EMAIL PROTECTED]
To: Struts User [EMAIL PROTECTED]
Sent: Sunday, February 22, 2004 5:40 AM
Subject: [Newbie] Is it worth subclassing your own Action and ActionForm
classes to attain code re-use?


 My application allows a user to make various different types of bookings
for
 a (fictional!!!) hospital and logs them in a database. Each type of
booking
 has a set of common properties but also different ones depending on the
type
 of booking being made.

 I have divided my classes into a BookingAction and BookingActionForm
 superclass and subclasses (such as AmbulanceBookingAction and
 AmbulanceBookingActionForm) because I anticipate creating other subtypes
of
 BookingAction that use the same properties in the BookingAction class but
 not in the AmbulanceBookingAction subclass. This initially seemed to me to
 be in keeping with programming for code re-use and extensibility.

 My problem with this is, if a user submits a form which posts its data via
 the ActionServlet to the AmbulanceBookingAction subclass, how would I
ensure
 the BookingAction class did its stuff? Would it be better / easier to use
 separate, non-derived (from my superclasses) Actions and ActionForms to
 handle each type of booking and not subclass BookingAction and
 BookingActionForm (even though I would be repeating the some of the same
 properties common to each different type of booking)?

 I am concerned, though, not to lose points for not reusing code. It just
 seems to me, though, that trying to divvy the handling of the form data
via
 inheritance is too complicated and / or unnecessary.

 In what circumstances might you want to subclass your own Action class
and,
 if you did, how would you handle/inherit the form data? Would you just use
 different subclasses of your Action but just one ActionForm for each
Action?

 What is the best way for me to implement this problem? (Or have I answered
 my own question?! ;0) )

 Thanks for indulging me!

 Mark


 -
 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]



Re: [Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-23 Thread Rick Reumann
On Sat, 2004-02-21 at 23:40, Mark Jones wrote:
 
 In what circumstances might you want to subclass your own Action class and,
 if you did, how would you handle/inherit the form data? Would you just use
 different subclasses of your Action but just one ActionForm for each Action?

Did you look at all at the e-mail that I sent you, and Robert Taylor
sent, in reference to this same question on the other list you posted
to?

-- 
Rick


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



Re: [Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-23 Thread Oswald Campesato
Hello, Rick:
 
I'm joining this out-of-context, so apologies if it's been discussed.
 
Some time ago I extended ActionServlet in order to collect some
timing-related results and then generated an XML file to which I
applied an XSL stylesheet in order to generate an SVG-based
bar chart.  
 
Then I was hit with a virus on my PC (long story), and lost the 
code after reformatting my hard drive:(  Anyway, it wasn't rocket 
science, and when I have time I'll rewrite the code.
 
Cordially,
 
Oswald
 
 


Rick Reumann [EMAIL PROTECTED] wrote:
On Sat, 2004-02-21 at 23:40, Mark Jones wrote:

 In what circumstances might you want to subclass your own Action class and,
 if you did, how would you handle/inherit the form data? Would you just use
 different subclasses of your Action but just one ActionForm for each Action?

Did you look at all at the e-mail that I sent you, and Robert Taylor
sent, in reference to this same question on the other list you posted
to?

-- 
Rick


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


-
Do you Yahoo!?
Yahoo! Mail SpamGuard - Read only the mail you want.

Re: [Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-22 Thread Adam Hardy
On 02/22/2004 05:40 AM Mark Jones wrote:
My application allows a user to make various different types of bookings for
a (fictional!!!) hospital and logs them in a database. Each type of booking
has a set of common properties but also different ones depending on the type
of booking being made.
I have divided my classes into a BookingAction and BookingActionForm
superclass and subclasses (such as AmbulanceBookingAction and
AmbulanceBookingActionForm) because I anticipate creating other subtypes of
BookingAction that use the same properties in the BookingAction class but
not in the AmbulanceBookingAction subclass. This initially seemed to me to
be in keeping with programming for code re-use and extensibility.
I have just one Action class for the whole app that all my Action 
subclasses inherit. It does all the common processing that I need. It is 
now after 2 years on the project fairly complex but it is really all 
common functionality.

I can't see any need in my situation for having a different Action 
superclass for each module.

My problem with this is, if a user submits a form which posts its data via
the ActionServlet to the AmbulanceBookingAction subclass, how would I ensure
the BookingAction class did its stuff? Would it be better / easier to use
separate, non-derived (from my superclasses) Actions and ActionForms to
handle each type of booking and not subclass BookingAction and
BookingActionForm (even though I would be repeating the some of the same
properties common to each different type of booking)?
You make sure they do their stuff because they have the perform() or 
execute() method, and they call the actual AmbulanceBookingAction for 
example.

I am concerned, though, not to lose points for not reusing code. It just
seems to me, though, that trying to divvy the handling of the form data via
inheritance is too complicated and / or unnecessary.
I once had a ActionForm superclass with getter / setter methods for 
frequently occuring fields - but dropped it because the advantage was 
trivial. And I started using DynaActionForms.

Adam
--
struts 1.1 + tomcat 5.0.16 + java 1.4.2
Linux 2.4.20 Debian
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


RE: [Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-22 Thread Matthias Wessendorf
Hi Mark,

like Adam said, i also have one super-action-class :-)

i declare it as abstract an implement execute()-methode
form Action

inside execute(), i call an abstract methode (e.g. doExecute())

so our ActionServlet(it´s RequestProcessor...) calls execute()
and every subclassed doExecute().

there is a sample-code below:

instead of ActionForm-Klasses i also use DynaActionForms.
but i use DynaValidatorForm for using Validator-Framework.

form-bean name=logonForm
type=org.apache.struts.validator.DynaValidatorForm
  form-property name=user type=java.lang.String /
   form-property name=password type=java.lang.String /
/form-bean

i use PropertyUtils.copyProperties()
(from the nice jakarta-commons-beanutils-project)
inside an action.class to get the form-properties:
PropertyUtils.copyProperties(myDataTransferObject,form);
it copied all properities from form to your business-objects
if the props are named equal!!

for manually access
you have to use 
Integer integer = (Integer)form.get(ageOfMisterX);
form.set(ageOfMisterX,new Integer(33));
because all properties are savaed in a HashMap

hope that helps.

cheers
Matthias


public abstract class SuperAction extends Action{

public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {

//do common things

return doExecute(mapping,form,request,response);
}
 
public abstract ActionForward doExecute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception;

}
-Original Message-
From: Adam Hardy [mailto:[EMAIL PROTECTED] 
Sent: Sunday, February 22, 2004 12:15 PM
To: Struts Users Mailing List
Subject: Re: [Newbie] Is it worth subclassing your own Action and
ActionForm classes to attain code re-use?


On 02/22/2004 05:40 AM Mark Jones wrote:
 My application allows a user to make various different types of 
 bookings for a (fictional!!!) hospital and logs them in a database. 
 Each type of booking has a set of common properties but also different

 ones depending on the type of booking being made.
 
 I have divided my classes into a BookingAction and BookingActionForm 
 superclass and subclasses (such as AmbulanceBookingAction and
 AmbulanceBookingActionForm) because I anticipate creating other 
 subtypes of BookingAction that use the same properties in the 
 BookingAction class but not in the AmbulanceBookingAction subclass. 
 This initially seemed to me to be in keeping with programming for code

 re-use and extensibility.

I have just one Action class for the whole app that all my Action 
subclasses inherit. It does all the common processing that I need. It is

now after 2 years on the project fairly complex but it is really all 
common functionality.

I can't see any need in my situation for having a different Action 
superclass for each module.

 
 My problem with this is, if a user submits a form which posts its data

 via the ActionServlet to the AmbulanceBookingAction subclass, how 
 would I ensure the BookingAction class did its stuff? Would it be 
 better / easier to use separate, non-derived (from my superclasses) 
 Actions and ActionForms to handle each type of booking and not 
 subclass BookingAction and BookingActionForm (even though I would be 
 repeating the some of the same properties common to each different 
 type of booking)?
 

You make sure they do their stuff because they have the perform() or 
execute() method, and they call the actual AmbulanceBookingAction for 
example.

 I am concerned, though, not to lose points for not reusing code. It 
 just seems to me, though, that trying to divvy the handling of the 
 form data via inheritance is too complicated and / or unnecessary.
 

I once had a ActionForm superclass with getter / setter methods for 
frequently occuring fields - but dropped it because the advantage was 
trivial. And I started using DynaActionForms.


Adam
-- 
struts 1.1 + tomcat 5.0.16 + java 1.4.2
Linux 2.4.20 Debian


-
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]



[Newbie] Is it worth subclassing your own Action and ActionForm classes to attain code re-use?

2004-02-21 Thread Mark Jones
My application allows a user to make various different types of bookings for
a (fictional!!!) hospital and logs them in a database. Each type of booking
has a set of common properties but also different ones depending on the type
of booking being made.

I have divided my classes into a BookingAction and BookingActionForm
superclass and subclasses (such as AmbulanceBookingAction and
AmbulanceBookingActionForm) because I anticipate creating other subtypes of
BookingAction that use the same properties in the BookingAction class but
not in the AmbulanceBookingAction subclass. This initially seemed to me to
be in keeping with programming for code re-use and extensibility.

My problem with this is, if a user submits a form which posts its data via
the ActionServlet to the AmbulanceBookingAction subclass, how would I ensure
the BookingAction class did its stuff? Would it be better / easier to use
separate, non-derived (from my superclasses) Actions and ActionForms to
handle each type of booking and not subclass BookingAction and
BookingActionForm (even though I would be repeating the some of the same
properties common to each different type of booking)?

I am concerned, though, not to lose points for not reusing code. It just
seems to me, though, that trying to divvy the handling of the form data via
inheritance is too complicated and / or unnecessary.

In what circumstances might you want to subclass your own Action class and,
if you did, how would you handle/inherit the form data? Would you just use
different subclasses of your Action but just one ActionForm for each Action?

What is the best way for me to implement this problem? (Or have I answered
my own question?! ;0) )

Thanks for indulging me!

Mark


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