2011-05-16 365 views
4

我正在一個項目中,我有一個web服務模塊和一個webmodule。我想根據web服務的wsdl文件生成客戶端,並且我想在構建web服務模塊時生成wsdl文件。 (axis2-java2wsdl-maven-plugin和axis2-wsdl2code-maven-plugin),但axis2-java2wsdl-maven-plugin一直爲wsdl文件生成無效的xsd(I至少認爲它是無效的)。基於maven中的wsdl文件生成wsdl文件和webservice客戶端

webservice從其方法返回一些枚舉,或者返回包含枚舉的對象。在生成wsdl文件時,我得到了對於兩個枚舉類型在給定名稱空間中不存在的「xs:Enum」的引用。我有幾個,但只有兩個獲得這個基地=「XS:Enum」。

<xs:complexType name="LoginType"> 
    <xs:complexContent> 
     <xs:extension base="xs:Enum"> 
      <xs:sequence/> 
     </xs:extension> 
    </xs:complexContent> 
</xs:complexType> 

因此,與Axis2的-wsdl2code - Maven的插件構建客戶端模塊的時候,我得到以下錯誤:

error: src-resolve: type '[email protected]://www.w3.org/2001/XMLSchema' not found. 

我不明白爲什麼它不斷產生無效的XSD!

回答

2

這已經是a known issue很長一段時間了。這是我開始使用Apache CXF而不是Axis的許多原因之一。它甚至有a similar Maven Plugin

+0

非常感謝!我想知道我在這裏可能會做錯什麼...... – 2011-05-16 12:51:36