2011-05-10 370 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的导入语句...