Author Login
Post Reply
More like;
<package name="somePackage" namespace="/myNamespace" extends="struts-default">
<action name="load" method="load" class="FirstObjectManager">...</action>
<action name="save" method="save" class="FirstObjectManager">...</action>
<action name="load" method="load" class="SecondObjectManager">...</action>
<action name="save" method="save" class="SecondObjectManager">...</action>
...
</package>
You can also use singletons, utility classes, and good old-fashioned
inheritance to reduce code duplication (remember, Actions don't have to
extend ActionSupport, ActionSupport is just a utility class).
Al.
Milan Milanovic wrote:
> Dear Al,
>
> O.K. You suggest that I have multiple classes in one package/namespace, like
> this:
>
> <package name="somePackafe" namespace="/myNamespace"
> extends="struts-default">
>
> <action name="load" method="execute" class="FirstActionClass">
> ...
> </action>
>
> ...
>
> <action name="save" method="execute" class="SecondActionClass">
> ...
> </action>
> </package>
>
> ?
>
> I understand what are you talking about, but my class is connected to little
> bit complex jsp-s, where I have, reading/saving master object,
> reading/saving its child objects, some links to other objects, and all of
> that must be placed during user input, like wizard, so it's hard to separate
> code in two classes, because I will have a lot of duplicate code
> (attributes).
>
> --
> Regards, Milan
>
>
> Al Sutton wrote:
>
>> You don't need to have all your actions for a namespace in a single
>> class, you can use multiple classes.
>>
>> I usually group methods acting on a common object into a single class
>> which usually leaves me with the 5 public methods in a class which map
>> to actions (typically CRUD plus a View method), and multiple classes for
>> different object types.
>>
>> Imho 20 is too many, 10 is a lot, 5 is OK (don't forget that's public
>> action methods, the number of private methods you have will depend on
>> your app).
>>
>> Al.
>>
>>
>> Milan Milanovic wrote:
>>
>>> Dear Al and Dave,
>>>
>>> I tried to fix that error with session variable all weekend and I didn't
>>> managed to fix it. When action is defined as redirect action to another
>>> namespace, and when that action is called, another action called method
>>> doesn't see my session variables. I just changed this redirect action to
>>> that another namespace, as standard action (not redirect) and I now see
>>> my
>>> variables! I don't have any idea why it doesn't work with redirect
>>> action,
>>> but I'm SURE that there is some problem.
>>>
>>> I have one question regarding refactoring action classes, is it much to
>>> have
>>> 20 actions per one namespace/action class ?
>>>
>>> --
>>> Regards, Milan
>>>
>>>
>> --
>> --
>> Al Sutton
>>
>> W: www.alsutton.com
>> T: twitter.com/alsutton
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@(protected)
>> For additional commands, e-mail: user-help@(protected)
>>
>>
>>
>>
>
>
--
--
Al Sutton
W: www.alsutton.com
T: twitter.com/alsutton
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@(protected)
For additional commands, e-mail: user-help@(protected)