Unfortunately, the Seam metamodel (the Component objects) are all created by the servlet context listener.
The EJB3 container has no startup hooks, so I can;t really do that stuff at EJB container startup time.
But perhaps if you have some funny startup hooks, you could call new initialization().init() from there....
Might require some changes to Seam code.
Thanks for the quick response,
Actually I'm starting the EJB container using EJB3StandaloneBootstrap.boot(); Then I have a EJB3StandaloneDeployer deploy the EJBs. Seam doesn't start the EJB container, but because my EJB package contains the ejb-jar.xml file, the SeamInterceptor gets installed before Seam is initialized.
What I'd like to do is to deploy the EJBs in the container without installing the SeamInterceptor, access the EJBs and install the SeamInterceptor just before deploying my webapp (which will initialize Seam). In other words, I'd like to "upgrade" my EJBs to Seam components right before starting Seam.
What I don't know is: Is there a way to install the SeamInterceptor in the EJB container (or in the JBoss Micro Container) after it has been started and before Seam gets initialized (or maybe it doesn't matter if the SeamInterceptor is installed after Seam initialization) ?
I don't see how its really going to work, sorry. I would just do this component that can work w/o an interceptor as a non-seam component if I were you. You can always wrap a Seam component around it if you need.