Class Services.TestClass Extends (%RegisteredObject, %XML.Adaptor)
{
Property DS As %XML.DataSet;
}
以及我的 Web 服务类中的以下 Web 方法:
Method HelloWorld(name As %String) As Services.TestClass [ WebMethod ]
{
Quit ##class(Services.TestClass).%New()
}
这将生成以下 XML:
<s:complexType name="TestClass">
<s:sequence>
<s:element minOccurs="0" name="DS" type="s0:DataSet"/>
</s:sequence>
</s:complexType>
<s:complexType name="s_DataSet">
<s:sequence>
<s:element ref="s:schema"/>
<s:any/>
</s:sequence>
</s:complexType>
</s:schema>
我相信 s_DataSet 名称实际上应该只是 DataSet,因为 s0:DataSet 指向 DataSet,而不是 s_DataSet
当我使用使用该服务的客户端时,我收到以下错误:错误:找不到类型'DataSet@ http://tempuri.org '。(来自 SoapUI)
当我将 DataSet 属性从 TestClass 中取出并直接返回时,一切都很好。到底是怎么回事?