Now I had some time to look more into the issue. It had to do with the resteasy jars for some reason, I had set the version to 2.0.1.GA and then the injection didn't work. With resteasy 2.0-beta-2 together with seam 2.2.1.Final it works fine.
This issue came back, without resteasy version being changed.
The injections that fails looks like this:
@Logger private Log logger; @In(create=true, value="asyncWurflImporter") private AsyncWurflImporter asyncWurflImporter;
these are null. However, this one works:
@PersistenceContext(type=PersistenceContextType.EXTENDED) private EntityManager em;
What can I do to troubleshoot the seam injection and find what cause it to fail?
I can see that Component instanciates the stateful session bean, but it is never initialized where I understand that seam does the injections. Other bean types has postConstruct methods called from Component.postConstruct(Object bean) which calls initialize(Object bean), but postConstructSessionBean(Object bean) is empty. Neither can I see that SessionBeanInterceptor.postConstruct(InvocationContext invocation) is called.
Any suggestions where to search next?
If I remove all resteasy jars then SessionBeanInterceptor.postConstruct(InvocationContext invocation) is called and the dependencies of the session bean are injected properly. If I add the resteasy jars then it is not working, even if I don't have seam-resteasy jar nor any resteasy configuration in components.xml.
If I add @PostConstruct and @Create annotations to method in my session bean then those are called but seam dependencies are not injected.