.net 来自ColdFusion webservice的SOAP响应结构

.net 来自ColdFusion webservice的SOAP响应结构,.net,xml,web-services,soap,coldfusion,.net,Xml,Web Services,Soap,Coldfusion,我创建的ColdFusion Web服务有问题。该服务接受Base64编码的XML数据,然后将其写入磁盘进行归档。然后对该文件进行基本模式检查,并按如下方式向用户报告任何错误: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.or

我创建的ColdFusion Web服务有问题。该服务接受Base64编码的XML数据,然后将其写入磁盘进行归档。然后对该文件进行基本模式检查,并按如下方式向用户报告任何错误:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
        <UploadXMLResponse xmlns="http://url">
            <UploadXMLReturn>
                <AuthMessage>Authentication successful</AuthMessage>
                <AuthStatus>Success</AuthStatus>
                <FileInfo>File Example.xml was successfully uploaded</FileInfo>
                <UploadStatus>Success</UploadStatus>
                <xmlValErrors>
                    <xmlValErrors xsi:type="xsd:string">1824</xmlValErrors>
                    <xmlValErrors xsi:type="xsd:string">Error Message</xmlValErrors>
                    <xmlValErrors xsi:type="xsd:string">23</xmlValErrors>
                    <xmlValErrors xsi:type="xsd:string">1824</xmlValErrors>
                    <xmlValErrors xsi:type="xsd:string">Error Message</xmlValErrors>
                    <xmlValErrors xsi:type="xsd:string">38</xmlValErrors>
                </xmlValErrors>
                <xmlValMessage>Schema validation generated errors</xmlValMessage>
                <xmlValStatus>Failure</xmlValStatus>
            </UploadXMLReturn>
        </UploadXMLResponse>
    </soapenv:Body>
</soapenv:Envelope>

身份验证成功
成功
文件Example.xml已成功上载
成功
1824
错误消息
23
1824
错误消息
38
架构验证生成错误
失败
问题是
元素的嵌套方式有点奇怪。这是因为ColdFusion处理错误数组的方式。结果是,当用户试图分析响应时,他们只能看到初始的
元素

Net在这里似乎是一个特殊的问题,因为它将
元素视为一个空数组,尽管它显然包含许多其他元素

我怀疑问题在于在
元素中的子元素上重用名称。然而,在ColdFusion中,我还没有找到一个解决这个问题的方法


对于如何解决这一问题,我将不胜感激。

XML和SOAP都不是我的强项,但xmlValErrors的子元素不应该也被称为“xmlValErrors”。您不想让它们都是“xmlvaleror”吗?

您是如何访问xmlvaleror的?因为您的错误数组位于父xmlVarErrors中,所以您希望像这样访问它:

上载XmlReturn.xmlvarerrors.xmlvarerrors

第一个xmlvarerrors指向父级,第二个指向错误数组


有意义吗?

Al,这正是我的问题。我希望有人能从处理Coldfusion构建输出的方式这两个角度来回答这个问题。或者提供一个解决方案,允许.Net查看子元素,即使它们的名称很烦人。