2011-05-10 369 views
0

我正在用JAX WS構建SOAP Web服務。其中一個客戶應該是SAP。在使用NetBeans直接在Java中開發服務端口之後,我嘗試使用WSDL XML文件連接到服務。WSDL缺少數據類型定義

我的問題是,它是很好的定義,但缺少數據類型定義。有沒有辦法使用NetBeans獲取WSDL的缺失部分?

例如,我的一個端口返回一個複雜的數據類型,它是一個名爲ReportResponse的Java對象。它包含2個字符串,一個布爾值和一個整數字段。此部分的WSDL看起來是這樣的:

<message name="reportResponse"> 
    <part name="parameters" element="tns:reportResponse" /> 
    </message> 

的問題是,「TNS:reportResponse」不是我的WSDL文件進一步明確。

回答

3

請參閱您的wsdl的.xsd文件。元素「reportResponse」應該有複雜的類型定義。你可以找到xsd。

如果您通過url將wsdl加載到netbeans,則情況是jaxws找不到您的xsd文件。最好的方法是將wsdl和xsd下載到本地文件夾並將它們加載到netbeans。

+0

我在哪裏可以找到XSD?我可以通過HTTP獲取WSDL獲取...它位於何處? – 2011-05-10 08:44:05

+1

在您的WSDL文件會出現以下標記 。 – 2011-05-10 09:14:28

+0

對不起...今天我有點凌亂...只是沒有看到進口聲明! – 2011-05-10 18:53:41

0

是否在XSD上獨立定義?如果是這樣,您應該使用引用您的XSD URL的導入語句...