CXF生成WSDL,其中Fault扩展tns:exception

时间:2015-07-14 13:27:38

标签: java wsdl cxf java2wsdl

我有一个定义的CXF Fault类:

@WebFault(name = "FaultContainer",
        faultBean = "myapi.transport.FaultContainer",
        targetNamespace = "mynmspace")
public class ServiceFaultSecond extends java.lang.Exception {
...
}

如您所见,它扩展了普通的Java异常。问题是,在CXF生成的WSDL中,这个类以这样的方式表示:

<xs:complexType name="serviceFaultSecond">
 <xs:complexContent>
  <xs:extension base="tns:exception">
   <xs:sequence>
    <xs:element minOccurs="0" name="faultInfo" type="tns:FaultContainer"/>
   </xs:sequence>
  </xs:extension>
 </xs:complexContent>
</xs:complexType>

这里扩展了一个“tns:exception”(比扩展tns:throwable)。现在,当我尝试生成客户端时,存在编译错误 - 它需要mynmspace.Exception和mynmspace.Throwable而不是java.lang ...

通常,CXF不会将xs:extension元素放入WSDL中,为什么现在会发生?

0 个答案:

没有答案