2010-01-15 38 views
1

對於web服務,我們通常使用maven-jaxb2插件生成java bean,並在Spring中使用JAXB2編組。我想知道如何處理最好在WSDL/XSD中聲明的(SOAP-)錯誤。在應用程序中,我想使用編排到故障的Java異常。這可能嗎?我還沒有找到一種方法來生成maven-jaxb2-plugin的源代碼生成異常。謝謝!使用JAXB2生成Java異常XSD /綁定異常

更新:我想使用spring-ws。但我想主要的問題是如何使用jaxb2源生成器生成java異常。

回答

0

XFire(現在的CXF)允許您將在WSDL中聲明的SOAP異常綁定到特定的Java異常,如here所述。這些Java異常是通過手工創建的,而不是通過JAXB生成的。我不知道Spring-WS中是否有相當的功能。

0

Jaxb2-plugin僅從XSD生成bean。您可以使用jaxws-maven-pluginmaven-jaxb2-plugin的instad。

嘗試使用這樣的:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>jaxws-maven-plugin</artifactId> 
    <executions> 
     <execution> 
      <id>generate-from-wsdl< 
      <goals> 
       <goal>wsimport</ 
      </goals> 
     </execution> 
    </executions> 

    <configuration> 
     <wsdlDirectory>src/main/resources/wsdl/</wsdlDirectory> 
     <keep>true</keep> 
     <sourceDestDir>target/generated-sources/wsimport</sourceDestDir> 
    </configuration> 
</plugin> 

只需簡單地調用上的兩個包中target/generated-sources/wsimport命令mvn clean install,你會發現生成的資源:

  • 類型 - 生成的Java bean與jaxb相同
  • wsdl - 從wsdl生成的類,異常,接口