Don,

I agree. 

I think it would be even nicer if the verify action procedure did its job
without actually instantiating the actions. 
This is the way it works when Spring is not being used to instantiate
actions.  The regular ObjectFactory (as opposed to the SpringObjectFactory),
simply tries to load the class specified in the configuration file. There is
no action object creation involved.
Granted that it ought be be more complicated to do the verification for
Spring objects, but hopefully there is enough metadata available that you
could do it.
I will enter a JIRA ticket.

Marco



Don Brown wrote:
> 
> I think a worthwhile enhancement would be the ability to
> enable/disable the verify action behavior in
> struts.properties/struts.xml.  Please file a JIRA ticket.  Thanks,
> 
> Don
> 
> On 3/15/07, Marco from Balboa <[EMAIL PROTECTED]> wrote:
>>
>> Martin,
>>
>> Wouldn't your suggestion ensure that all the action beans and their
>> dependencies (like database connections) get instantiated when the
>> application gets loaded? This is the situation that I am seeking to
>> avoid.
>> If the dependencies are set up right, Spring will make sure that the
>> datasource is instantiated before any other object that depends on it
>> directly or indirectly.
>>
>> I did a crude little experiment. I replaced the implementation of the
>> method
>> verifyAction() in the class XmlConfigurationProvider in the
>> xwork-2.0.1.jar
>> to always return true. This is the method that checks the action classes
>> to
>> verify that the no-arg constructor is available and public. I am now
>> getting
>> the effect that I was looking for.
>> Not very satisfying, but unless there is some other option out there, it
>> will have to do until the code base is updated.
>>
>> Marco
>>
>>
>> Martin Gainty wrote:
>> >
>> > Marco
>> >
>> > you may have a concurrency problem as by the time the action is invoked
>> > the DataSource bean *should have been* already created
>> > with regards to Spring Beans you can set lazy-init in
>> > ApplicationContext.xml to false to both alloc and instantiate the bean
>> > straight off
>> > <bean id="beanid" class="fullPackageNameOfClass" lazy-init="false"
>> >  <property name="dataSource" ref="dataSource"/>
>> > </bean>
>> >
>> > M--
>> >
>> ---------------------------------------------------------------------------
>> > This e-mail message (including attachments, if any) is intended for the
>> > use of the individual or entity to which it is addressed and may
>> contain
>> > information that is privileged, proprietary , confidential and exempt
>> from
>> > disclosure. If you are not the intended recipient, you are notified
>> that
>> > any dissemination, distribution or copying of this communication is
>> > strictly prohibited.
>> >
>> ---------------------------------------------------------------------------
>> > Le présent message électronique (y compris les pièces qui y sont
>> annexées,
>> > le cas échéant) s'adresse au destinataire indiqué et peut contenir des
>> > renseignements de caractère privé ou confidentiel. Si vous n'êtes pas
>> le
>> > destinataire de ce document, nous vous signalons qu'il est strictement
>> > interdit de le diffuser, de le distribuer ou de le reproduire.
>> > ----- Original Message -----
>> > From: "Marco from Balboa" <[EMAIL PROTECTED]>
>> > To: <user@struts.apache.org>
>> > Sent: Thursday, March 15, 2007 9:28 AM
>> > Subject: Re: Lazy loading actions in Struts 2
>> >
>> >
>> >>
>> >> Spring generally requires that the no-arg constructor be accessible.
>> It
>> >> ought
>> >> to be unless you explicitly override it in your class and mark it
>> >> private.
>> >> The only time I care about the instantiation of beans at startup is
>> >> during
>> >> development, where a quick application restart is helpful. When I am
>> >> working
>> >> on a piece of functionality, particularly one that involves
>> interaction
>> >> between the actions and the gui, I find myself restarting the
>> application
>> >> fairly frequently. In my case, I have connections to multiple
>> databases
>> >> and
>> >> some other very expensive resources that I am allowing Spring to
>> create
>> >> and
>> >> inject into the action objects. It would be a great timesaver during
>> >> development if only the stuff that I am using gets instantiated.
>> >>
>> >> It looks like your are correct and my only alternatives are to submit
>> at
>> >> JIRA or try to fix it myself. Any other ideas out there?
>> >>
>> >> Thanks,
>> >>
>> >> Marco
>> >>
>> >>
>> >> Dave Newton-4 wrote:
>> >>>
>> >>> --- Marco from Balboa <[EMAIL PROTECTED]> wrote:
>> >>>> I tried following the documentation where they
>> >>>> instruct to place the name of the Spring bean in
>> >>>> class attribute for the action definition in the
>> >>>> struts.xml. I assume this is what you are doing as
>> >>>> well, correct?
>> >>>
>> >>> No :( I wasn't doing that, and when I do I also get
>> >>> the ctor log debug msg. Sorry!!!
>> >>>
>> >>> I guess I've never noticed this because so far I've
>> >>> never had explicit ctors in my Actions. Just out of
>> >>> curiosity, why do you?
>> >>>
>> >>>> Couldn't this verification be done wihtout actually
>> >>>> instatiating the bean and only examining the
>> >>> metadata
>> >>>
>> >>> Probably.
>> >>>
>> >>>> more simply skipped and allow for the problem to
>> >>>> surface when the action is actually called (maybe
>> >>> via
>> >>>> a configuration parameter)?
>> >>>
>> >>> I suppose you could create a JIRA for this.
>> >>>
>> >>> d.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> ____________________________________________________________________________________
>> >>> Sucker-punch spam with award-winning protection.
>> >>> Try the free Yahoo! Mail Beta.
>> >>> http://advision.webevents.yahoo.com/mailbeta/features_spam.html
>> >>>
>> >>> ---------------------------------------------------------------------
>> >>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >>> For additional commands, e-mail: [EMAIL PROTECTED]
>> >>>
>> >>>
>> >>>
>> >>
>> >> --
>> >> View this message in context:
>> >>
>> http://www.nabble.com/Lazy-loading-actions-in-Struts-2-tf3404803.html#a9494446
>> >> Sent from the Struts - User mailing list archive at Nabble.com.
>> >>
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> For additional commands, e-mail: [EMAIL PROTECTED]
>> >>
>> >>
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Lazy-loading-actions-in-Struts-2-tf3404803.html#a9497636
>> Sent from the Struts - User mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> 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]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Lazy-loading-actions-in-Struts-2-tf3404803.html#a9499201
Sent from the Struts - User mailing list archive at Nabble.com.


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

Reply via email to