[jboss-user] [JNDI/Naming/Network] - @Resource injection not working in shared library
vdmeerenp
do-not-reply at jboss.com
Fri Mar 20 05:46:42 EDT 2009
Hello everyone,
I have the impression that resource injection (using @Resource annotation) is not executed when using shared library (in common/lib folder).
I have created a HttpSessionListener , with a datasource declared like this:
| @Resource(mappedName = "java:DefaultDS")
| private DataSource ds;
| ...
|
This listener is bundled in a jar file, which I have put under <JBOSS_HOME>/common/lib to make it available for all applications running on my Jboss application server.
Then I have a web application which uses this HttpSessionListener by declaring it in it's web.xml.
What I see is that when web application is deployed and listener is executed the datasource (ds) is always = null.This means the container did not execute the dependency injection of the datasource.
Note that when I add the jar file (with listener) to WEB-INF/lib of my web application, it DOES get executed.
So it seems that JBoss does not do dependency injection when @Resource annotations are put on classes which are in the common/lib folder.
Could someone please help because I don't want to deploy my shared jar with each application individually.
Many thanks in advance.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4219765#4219765
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4219765
More information about the jboss-user
mailing list