Hello,
I' trying to build a standalone Java SE application that would use Seam with the
embedded EJB3 container and also embed Jetty as a servlet container.
I also need to be able to retrieve some configuration information from the SQL database
before I can start the servlet container (actually, I want to retrieve a Certificate to
start the servlet container with SSL).
Since managing authentication certificates is at the core of my application, they are
defined as EJB / Seam components. So I thought it would be nice if I could retrieve the
SSL certificate through the container-managed EntityManager (actually, through an EJB that
receives the EntityManager through dependency injection).
I managed to boot the EJB3 container, and lookup the bean, but when I try to access it I
get this exception:
java.lang.IllegalStateException: Attempted to invoke a Seam component outside the context
of a web application
Obviously, the SeamInterceptor won't let me access the bean before I deploy my web
application.
If I remove ejb-jar.xml from the jar that contains my EJBs, I can access the bean, but
once the web application is started, Seam doesn't "see it".
So my question is: is there a way to get around the SeamInterceptor ? Can I change its
policy ? Is there a way to deploy my beans in the EJB3 container, access them and install
the SeamInterceptor afterwards ? Am I just doing something plain stupid ?
Thanks for your advice,
Nicolas.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3977971#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...