I think I just stumbled on the answer while slogging through the code, You have to call:
Dispatcher.getInstance().getContainer().inject(this); somewhere early on. I'm putting it in doStartTag (Where the ComponentTagSupport class has it) and I'm testing now. (*Chris*) On 9/18/07, Ian Roughley <[EMAIL PROTECTED]> wrote: > I'm not sure that tag libraries are created by the object factory, if > this is the case, then the behaviour you are observing is correct (as > the annotations aren't checked and thus values not injected). You > should be able to track back the object creation in the code to confirm > this. > > /Ian > > Chris Pratt wrote: > > I'm attempting to understand the @Inject Annotation and how it can be > > used. I'm trying to create a tag library that needs to look up action > > data, so following the pattern from the FormTag I added this methods > > to my tag class: > > > > private boolean enableDynamicMethodInvocation = true; > > private Configuration configuration; > > private ActionMapper actionMapper; > > > > /** > > * Inject a flag as to whether Dynamic Method Invocation is enabled > > * > > * @param enable "true" to enable > > */ > > @Inject(StrutsConstants.STRUTS_ENABLE_DYNAMIC_METHOD_INVOCATION) > > public void setEnableDynamicMethodInvocation (String enable) { > > enableDynamicMethodInvocation = Boolean.parseBoolean(enable); > > log.debug("Dynamic Method Invocation Enabled {}",enable); > > } //setEnableDynamicMethodInvocation > > > > /** > > * Inject the Struts Configuration for looking up the proper Action > > * > > * @param config The Struts Configuration > > */ > > @Inject > > public void setConfiguration (Configuration configuration) { > > this.configuration = configuration; > > log.debug("Struts Configuration {}",configuration); > > } //setConfiguration > > > > /** > > * Inject the Action Mapper > > * > > * @param actionMapper The Action Mapper > > */ > > @Inject > > public void setActionMapper (ActionMapper actionMapper) { > > this.actionMapper = actionMapper; > > log.debug("Struts Action Mapper {}",actionMapper); > > } //setActionMapper > > > > But the attributes never get injected into the class. Is there > > something else that I have to configure to get this working? Thanks. > > (*Chris*) > > > > --------------------------------------------------------------------- > > 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] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]