C# XML分析器失败:元素格式不正确。无效的
我有一个flex 4.6应用程序调用访问MS SQl server的web服务。 我正在使用或试图使用我创建的web服务。web服务似乎正在工作,返回的XML看起来正常,但我得到了以下错误C# XML分析器失败:元素格式不正确。无效的,c#,web-services,apache-flex,actionscript,C#,Web Services,Apache Flex,Actionscript,我有一个flex 4.6应用程序调用访问MS SQl server的web服务。 我正在使用或试图使用我创建的web服务。web服务似乎正在工作,返回的XML看起来正常,但我得到了以下错误 "XML parser failure: element is malformed. null" 我在谷歌上搜索了这个错误,并做了一些研究,我收集到的信息表明,这是由来自web服务的XML格式引起的 我已经用c编写了web服务并对其进行了测试,该服务正在重新调整以下XML结构: <root> &
"XML parser failure: element is malformed. null"
我在谷歌上搜索了这个错误,并做了一些研究,我收集到的信息表明,这是由来自web服务的XML格式引起的
我已经用c编写了web服务并对其进行了测试,该服务正在重新调整以下XML结构:
<root>
<pub>
<PublicationId>BIA-B0112</PublicationId>
<TargetPPODate>2012-02-28</TargetPPODate>
<TargetPPIDate>2012-03-13</TargetPPIDate>
<TargetRIPDate>2012-03-16</TargetRIPDate>
</pub>
</root>
下面是我正在使用的动作脚本:
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:service1="services.service1.*"
width="529" height="322">
<fx:Script>
<![CDATA[
import com.adobe.serializers.utility.TypeUtility;
import mx.controls.Alert;
import mx.events.FlexEvent;
protected function dataGrid_creationCompleteHandler(event:FlexEvent):void
{
PubInfoResult.token = service1.PubInfo("FRP-Q0112");
}
]]>
</fx:Script>
<fx:Declarations>
<s:CallResponder id="PubInfoResult"/>
<service1:Service1 id="service1"
fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)"
showBusyCursor="true"/>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:TextInput id="BookCode" x="9" y="22"/>
<s:DataGrid id="dataGrid" x="75" y="95"
creationComplete="dataGrid_creationCompleteHandler(event)" requestedRowCount="4">
<s:columns>
<s:ArrayList>
</s:ArrayList>
</s:columns>
<s:typicalItem>
<fx:Object></fx:Object>
</s:typicalItem>
<s:AsyncListView list="{TypeUtility.convertToCollection(PubInfoResult.lastResult)}"/>
</s:DataGrid>
</s:WindowedApplication>
我是新的flex和web服务,因此在这方面遇到了一些问题,任何帮助都会很好。我没有做的是在数据服务中设置服务的返回类型是flash builder,一旦我做了,错误就被修复了。现在我遇到了另一个我必须研究的问题。现在只需重新调整返回XML文件的根元素,我需要元素中的数据
谢谢大家的帮助。您的xml是正确的,XmlDocument可以加载您的xml。你的虫子在别的地方。尝试打印ds.GetXmlTry将PubInfoResult.lastResult更改为PubInfoResult.lastResult.pub。
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:service1="services.service1.*"
width="529" height="322">
<fx:Script>
<![CDATA[
import com.adobe.serializers.utility.TypeUtility;
import mx.controls.Alert;
import mx.events.FlexEvent;
protected function dataGrid_creationCompleteHandler(event:FlexEvent):void
{
PubInfoResult.token = service1.PubInfo("FRP-Q0112");
}
]]>
</fx:Script>
<fx:Declarations>
<s:CallResponder id="PubInfoResult"/>
<service1:Service1 id="service1"
fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)"
showBusyCursor="true"/>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:TextInput id="BookCode" x="9" y="22"/>
<s:DataGrid id="dataGrid" x="75" y="95"
creationComplete="dataGrid_creationCompleteHandler(event)" requestedRowCount="4">
<s:columns>
<s:ArrayList>
</s:ArrayList>
</s:columns>
<s:typicalItem>
<fx:Object></fx:Object>
</s:typicalItem>
<s:AsyncListView list="{TypeUtility.convertToCollection(PubInfoResult.lastResult)}"/>
</s:DataGrid>
</s:WindowedApplication>