[jboss-user] [JBoss Seam] - Outjection and component instantiation question
zzzz8
do-not-reply at jboss.com
Mon May 7 14:02:14 EDT 2007
I think I may have a misconception of some of the intricacies of outjection and Seam component instantiation. I have a Seam component that is created by Seam via the @In(create=true) annotation. Unfortunately, I cannot seem to inject another Seam component into this component. Here's what I'm doing:
Seam component 1
| @Name("comp1")
| @Stateful
| public class MySample1Bean implements MySample1 {
| ...
|
| @Out
| Connection connection = null;
| ...
| public void myMethod() {
| ...
| connection = ...;
| ...
| }
| }
Seam component 2
| @Name("comp2")
| @Stateful
| public class MySample2Bean implements MySample2 {
| ...
|
| @In(create=true) // I've also tried @In(create=true, required=false)
| MySample3 comp3 = null;
|
| @In
| Connection connection = null;
| ...
|
| }
Seam component 3
| @Name("comp3")
| @Stateful
| public class MySample3Bean implements MySample3 {
| ...
|
| @In // I've put @In(required=false) here, too just so component gets created
| Connection connection = null;
|
| ...
|
| }
I have a page where comp1 is called. The user then invokes an action method which then navigates the user to another page, where comp2 is accessed. BTW, I have it on my pages.xml file that a long running conversation gets started (i.e. using <begin-conversation> when the page is invoked) for the page that calls comp2. The Seam component comp3 gets created in comp2 because of the @In(create=true) annotation. However, when comp3 is created, I'm expecting the connection context variable to be outjected to comp3. Unfortunately, connection is always null in comp3. Interestingly, connection is non-null in comp2. What's going on here and what am I doing wrong?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4043731#4043731
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4043731
More information about the jboss-user
mailing list