我使用基于wsdl的apache cxf创建了一个类。生成类(wsdl2java -impl -p com.comp.wserv)时,所有生成的类都放在一个包中。 后来,在Eclipse中,我正在编写逻辑并尝试将类排序到包中。所有类通常都在带有重构的包中携带,除了作为方法中的输入对象的类(例如,com.comp.wserv.GetClientByIdResponse getClient(GetPersonByName参数)中的GetPersonByFIO),它们负责返回结果。 任何人都可以向我解释问题是什么以及如何将这些类移动到com.comp.wserv生成的非默认包中?
当您使用alraedy移动的类调用服务时,会发生错误:
在汤中用:
<faultstring><![CDATA[Unmarshalling Error: unexpected element
(uri:"http://new.webservice.namespace", local:"requestHead"). Expected
elements are
<{}birthday>,<{}name>,<{}surname>,<{}patronymicName>]]></faultstring>
在eclipse控制台中:
05.02.2015 11:16:30.247 WARN PhaseInterceptorChain:439 - Interceptor for
{http://new.webservice.namespace}Service#{http://new.webservice.namespace}
getClient has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected
element (uri:"http://new.webservice.namespace", local:"requestHead").
Expected elements are
<{}birthday>,<{}name>,<{}surname>,<{}patronymicName>
当类在默认包中时 - com.comp.wserv - 一切正常。