2013-07-08 114 views
1

我想注入一個Web服務內的託管Bean,但注入的Bean是空的。有人知道爲什麼和一些提示或解決方法嗎?注入託管Bean到Webservice

這是代碼!

@WebService(targetNamespace = "http://impl.soap.valueservice.drivelog.com/", endpointInterface = "com.drivelog.valueservice.soap.impl.ValueService", portName = "ValueServiceImplPort", serviceName = "ValueServiceImplService") 
public class ValueServiceImpl implements ValueService { 

    @Inject 
    private ValueServiceFacade valueBean; 

... 
} 

@ManagedBean 
public class ValueServiceFacadeImpl implements ValueServiceFacade { 
... 
} 

感謝

回答

0

這實在是令人尷尬的。

根據這篇博文(https://weblogs.java.net/blog/jitu/archive/2010/02/19/jax-ws-cdi-java-ee-6-0)和這篇文章(https://blogs.oracle.com/arungupta/entry/totd_124_using_cdi_jpa),這應該工作,但我不能讓它在這裏使用TomEE工作。

這裏還有一些關於JSR的討論(https://bugzilla.redhat.com/show_bug.cgi?id=1001610),但我無法真正告訴你爲什麼它不起作用。

對於TomEE(openEJB),我能找到的很多問題都是關閉的(與https://issues.apache.org/jira/browse/OPENEJB-1592有關),並帶有可怕的評論「所有認證都完成了」,也許JEE Web Profile並不需要讓這些工作一起工作而實現完整EJB配置文件的Geronimo可能需要使用它。

另請參閱Java EE 6 WebService and CDI injection

所以我真的不能回答這個問題。同時,我會要求您向我們提供更多關於您使用的容器的信息,以便我們能夠更好地爲您提供幫助。