If you are refering to the annotations, yes they are an spring 2.5 thing (about time!).
musachy On Fri, May 9, 2008 at 3:14 AM, Laurie Harper <[EMAIL PROTECTED]> wrote: > Is what a Spring 2.5 thing? AFAIK, you need to set the action mapping's > 'class' attribute to the Spring bean identifier to get injection via the > spring plugin... but maybe I'm just tiered and not thinking it through :-/ > > L. > > Dave Newton wrote: >> >> Is this a Spring 2.5 thing? I'm not using 2.5 yet and haven't had to do >> anything to get my actions to be injected with Spring beans (at least I >> don't think so; I remember having to set the object factory to "spring" >> in earlier days?) >> >> Dave >> >> --- Laurie Harper <[EMAIL PROTECTED]> wrote: >> >>> Asleson, Ryan wrote: >>>> >>>> Hello, >>>> I found this guide to injecting Spring beans into Struts 2 Actions: >>>> http://cwiki.apache.org/WW/spring.html >>>> According to the red box at the bottom of the document, the Struts >>> >>> 2 >>>> >>>> Action does not need to be registered with Spring. So far so good. >>> >>> Er, that's not as clear as it could be; I believe it means that >>> 'registering Actions with Spring is not required *if you don't want Spring >>> dependency injection for that action*'. In other words, you >>> *do* need Spring to know about the action if you want it to inject >>> dependencies. >>> >>>> However, I'm a little unclear as to how exactly it "knows" what >>> >>> Spring >>>> >>>> beans to inject into the Struts 2 Action. Assuming I have a Struts >>> >>> 2 >>>> >>>> Action that depends on a PersonService, I assume that the Struts 2 >>>> Action would have a public mutator for the PersonService like this: >>>> public void setPersonService(PersonService service) { >>>> this.personService = service; >>>> } >>>> How does the injection system "know" that this method should be >>> >>> used for >>>> >>>> injecting a Spring bean? Imagine that the Struts 2 Action has >>> >>> several >>>> >>>> "set" methods, and that there are a number of configured Spring >>> >>> beans. >>>> >>>> It would take way too long for the injection system to look through >>>> every "set" method on the Action and try to find a matching Spring >>> >>> bean, >>>> >>>> especially if there are a lot of Spring beans (and there usually >>> >>> are). >>>> >>>> The document above includes this comment: >>>> We strongly recommend that you find declarative ways of letting >>> >>> Spring >>>> >>>> know what to provide for your actions. >>>> But it doesn't give an example of how to let Spring know what to >>> >>> provide >>>> >>>> to the actions. >>>> So, the question is: How do I tell Spring what beans need to be >>>> injected into the Action? >>> >>> You can either configure the action as a Spring bean in your >>> applicationContext.xml and use the normal declarative syntax to do >>> this, or you can use Spring 2.5's @Component, @Resource, etc. annotations >>> and skip the XML. But you do need to do one or the other. >>> >>> L. >>> >>> >>> --------------------------------------------------------------------- >>> 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] > > -- "Hey you! Would you help me to carry the stone?" Pink Floyd --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]