我使用Apache CXF的wsdl2java为Mikogo Web界面创建java存根。
创建失败,并显示以下消息:
The part does not have a type defined. Every part must specify a type from
some type system. The type can be specified using the built in element or type
attributes or may be specified using an extension attribute.
WSDL外观定义了以下消息:
<wsdl:message name="methodHttpPostOut">
<wsdl:part name="Body"/>
</wsdl:message>
<http:address location=... />
这看起来像非SOAP和“无架构”响应类型,严格的XSD类型定义没有涵盖。
任何人都可以帮忙吗?
答案 0 :(得分:1)
您得到此错误,因为您的部件没有定义类型。您可以使用这些消息输入属性:
这是complexType的简单示例:
<definitions .... >
<types>
<schema .... >
<element name="Invoice" type="tns:InvoiceType"/>
<complexType name="InvoiceType">
<all>
<element name="id" type="string"/>
</all>
</complexType>
</schema>
</types>
<message name="PO">
<part name="invoice" element="tns:Invoice"/>
</message>
</definitions>
这里有一些关于http命名空间和wsdl消息的链接:
答案 1 :(得分:1)
我按照以下步骤使用here中的 trang.jar 成功地对XSD进行了逆向工程:
这种方法远非架构,但它在没有过多挖掘XML / WSDL编写的情况下帮助了我。