Hi Mohammad,
Instantiating the MyJobImpl class via reflection is fine. The part I
wonder about is invoking it in another thread. Once the MyJobImpl
instance running in another thread it no longer has any relationship
to the ASessionBean or it's JNDI environment. Any JNDI lookups that
the MyJobImpl instance needs to do must be done in the same thread as
the ASessionBean that created it. If you moved the lookup into the
constructor of the MyJobImpl class, that would work. Or perhaps call
your "init()" method before launching the new thread.
-David
On Mar 9, 2009, at 6:34 AM, is_maximum wrote:
Hello
I have a problem when I want to lookup my session beans.
I have declared @EJB on the session bean in which a POJO class will be
created using reflection and will be executed in a separate thread.
I did
this before without reflection and it works fine but if my class is
instantiated at runtime using class.forName() the lookup won't work.
However
I'm not sure whether this is because of instantiation or invoking
method
with reflection.
The class that is instantiating with reflection is actually a batch
job and
we can't change the way it will be created and also we need to use
local
interfaces in that job. Furthermore a method of that job which is
responsible to lookup the SBs is invoked in the same way.
to clarify the problem check out the following code:
@EJB(name = "ejb/MyEjbRef", beanInterface=MyEjB.class)
@Stateless
public class ASessionBean implements SessionBean {
public void someMethod() {
MyJob job = MyJobImpl.class.newInstance();
.....
}
}
MyJobImpl implements MyJob {
@BeforeExecute
public void init() {
//NameNotFoundException occurs here!!!!
// Please note that this method is called using
method.invoke(...) rather than normal calling
MyEjb ejb = initialContext.lookup("java:comp/env/ejb/
MyEjbRef");
}
public void execute() {
//code
}
}
Is there any workaround to evade this problem or did I missed
something?
thanks
-----
--
Regards
Mohammad Norouzi
Help each other to reach the future faster
http://pixelshot.wordpress.com Pixelshot Photoblog
http://brainable.blogspot.com Brainable Blog
--
View this message in context:
http://www.nabble.com/problem-in-looking-up-local-interfaces-and-reflection-tp22413263p22413263.html
Sent from the OpenEJB User mailing list archive at Nabble.com.