1

我在嘗試注入與我的JVM完全分離的Web服務時收到異常。依賴注入@WebServiceRef我做錯了。但是如何?

我的環境是TomEE v1.0.0,它是一個JEE6 webprofile容器。

ThemeQueryService是一個JAXWS註釋接口。

@SessionScoped 
@Named("managedBeanMB") 
public class ManagedBeanMB implements Serializable { 
     private static final long serialVersionUID = 1L; 

     @WebServiceRef(
      wsdlLocation = "http://localhost:8777/services/queryService?wsdl") 
     private QueryService queryService; 
.... 
} 

後來,我在嘗試使用注射服務時的NPE:

Caused by: java.lang.NullPointerException 
     at org.apache.openejb.core.ivm.naming.JaxWsServiceReference.getObject(JaxWsServiceReference.java:73) 
     at org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:173) 
     at org.apache.openejb.cdi.CdiResourceInjectionService.lookup(CdiResourceInjectionService.java:134) 
     at org.apache.openejb.cdi.CdiResourceInjectionService.fillInjectionProperties(CdiResourceInjectionService.java:112) 
     at org.apache.openejb.cdi.CdiResourceInjectionService.injectJavaEEResources(CdiResourceInjectionService.java:96) 
     at org.apache.webbeans.component.AbstractInjectionTargetBean.injectResources(AbstractInjectionTargetBean.java:432) 
     at org.apache.webbeans.portable.creation.InjectionTargetProducer.inject(InjectionTargetProducer.java:91) 
     at org.apache.webbeans.component.InjectionTargetWrapper.inject(InjectionTargetWrapper.java:79) 
     at org.apache.webbeans.component.AbstractOwbBean.create(AbstractOwbBean.java:182) 

給我的感覺,我不明白WebServiceRef ......難道只能用於JNDI運輸?

回答