我使用HTTPService向Web服务发送请求。 Web服务在SQL Server中运行查询,并以XML格式返回行集f数据。只要结果集中任何列的标题中没有空白,服务就可以正常工作。但是,如果列名称中有任何空格(空白)(如“客户名称”),则会遇到以下错误:
错误#1090:XML解析器失败:元素格式错误。
在FireFox中使用HTTPFox插件,我可以看到检索到的记录如下所示。我认为这个问题是服务检索的XML标签中的空白。
<record>
<Year><![CDATA[2009]]></Year>
<Owner><![CDATA[BLM]]></Owner>
<Customer Name><![CDATA[Smith Naval]]></Customer Name>
</record>
有什么方法可以解决这个问题吗?
答案 0 :(得分:1)
我不知道该怎么说你似乎还不知道。
您不能在XML标记中包含空格,并且仍然符合XML标准。许多人认为数据库中的列名也不应该有空格。
如果可能,我会用下划线替换数据库列中的空格。如果那是不可能的,我会在创建XML时执行一些服务器端处理,以便空格不会出现在XML标记名称中。
以下是一些选项: