如题所示,使用Apache CXF开发web service时,使用SoapUI对web service接口进行测试时报了以下错误: org.apache.cxf.interceptor.Fault:objectisnotaninstanceofdeclaringclasswhileinvokingpublicabstractjava.lang.Stringcn.z
如题所示,使用Apache CXF开发web service时,使用SoapUI对web service接口进行测试时报了以下错误:
org.apache.cxf.interceptor.Fault: object is not an instance of declaring class while invoking public abstract java.lang.String cn.zifangsky.service.CXFService.sayHello(java.lang.String) with params [dddd]. at org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:166) at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:267) at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:140) at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:232) at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:85) ...
这个bug的出现是在配置文件这里:
<jaxws:server id="sayHelloServices" serviceClass="cn.zifangsky.service.CXFService" address="/services/soap" > <jaxws:serviceBean> <bean class="cn.zifangsky.service.impl.CXFServiceImpl" /> </jaxws:serviceBean> <jaxws:outInterceptors> <ref bean="outLoggingInterceptor" /> </jaxws:outInterceptors> <jaxws:inInterceptors> <ref bean="inLoggingInterceptor" /> </jaxws:inInterceptors> <jaxws:features> <ref bean="loggingFeature" /> <wsa:addressing xmlns:wsa="http://cxf.apache.org/ws/addressing" /> </jaxws:features> </jaxws:server>
其中,<jaxws:serviceBean>需要对应的是webservice接口的实现类,如果填错了则会出现上面的bug。当然我当时是犯了一个低级的错误,那就是CXFServiceImpl这个类忘记实现CXFService接口了,真是汗颜
650) this.width=650;" src="http://img.558idc.com/uploadfile/allimg/210624/154214M96-0.png" title="20160509141205416.png" alt="wKiom1czVXShsA7EAAAww33Ng1E130.png" d="4996773" s="cd2_eba" t="png">