问题描述
假设我有以下xsd:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="abcd" elementFormDefault="qualified" xmlns:ebppif1="abcd">
<xs:element name="Test">
<xs:complexType>
<xs:sequence>
<xs:element name="someValue" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
我跟随this tutorial创建了可完美运行的SOAP Web服务。
但是问题是名称空间缩短为'abc'(在SoapIU上)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:abc="abcd">
<soapenv:Header/>
<soapenv:Body>
<abc:Test>
<abc:someValue>123</abc:someValue>
</abc:Test>
</soapenv:Body>
</soapenv:Envelope>
如何禁用或更改名称空间长度缩短以在请求中实现完整的名称空间?
解决方法
您对XML名称空间的理解不正确。名称空间前缀不是名称空间。
SoapUI生成的XML文档是正确的。如果您查看SoapUI文档,则命名空间前缀'abc'将正确映射到命名空间'abcd'。
我强烈建议您阅读有关XML名称空间的W3Schools教程。这看似困难,但实际上非常简单。如果您花一些时间来学习基础知识,那将会有所收获。