2008-08-17 18 views
0

Flexアプリケーションがページに埋め込まれている.net Webアプリケーションがあります。このflexアプリケーションは.net webserviceを呼び出します。私は、デバッガによって実行proccessをトレースすることができ、私は応答を取得するまで、すべてが素晴らしく見える:フレックスからの呼び出しがよさそうだSoapException:.NET WebサービスがFlexから呼び出されたときにルート要素が見つからない




soap:ReceiverSystem.Web.Services.Protocols.SoapException: Server was unable to process request 

. ---> System.Xml.XmlException: Root element is missing. 

    at System.Xml.XmlTextReaderImpl.Throw(Exception e) 

    at System.Xml.XmlTextReaderImpl.ThrowWithoutLineInfo(String res) 

    at System.Xml.XmlTextReaderImpl.ParseDocumentContent() 

    at System.Xml.XmlTextReaderImpl.Read() 

    at System.Xml.XmlTextReader.Read() 

    at System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.Read() 

    at System.Xml.XmlReader.MoveToContent() 

    at System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.MoveToContent() 

    at System.Web.Services.Protocols.SoapServerProtocolHelper.GetRequestElement() 

    at System.Web.Services.Protocols.Soap12ServerProtocolHelper.RouteRequest() 

    at System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage message) 

    at System.Web.Services.Protocols.SoapServerProtocol.Initialize() 

    at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest 

request, HttpResponse response, Boolean& abortProcessing) 

    --- End of inner exception stack trace --- 
 

、Webサービスを通じて実行は良いですが、これは、応答で、私はWiresharkを経由して取り込みます何が起こっているの?

私は... paramatized方法に「Hello World」のからいくつかのWebメソッドを試してみましたが、私はそれが「とエンコーディングとは何かを持っていることが考え

同じ応答を持つすべてのカムバック... - " - & gt"しかし、私はレスポンスとしてどのように.netレンダリングを制御するのか不明です。

答えて

1

不適切な形式のXML文書をサービスに送信しているようです。 Webサービスに行く実際の呼び出しのコピーを取得するために、Fiddlerなどを使用できますか?それは問題が何であるかを理解する上で大きな助けになるでしょう。

+0

要求が不正であった場合、私はデバッガを使ってWebサービスを介して正常に実行されるとは思わないでしょうか? – mmattax

0

Flex 3を使用していますか?その場合は、Webサービスが実行されたときにブレークポイントを設定し、実際にリクエストをエンコードするときにFlexフレームワークを実際に実行することができます。 mx.rpc.soap.SoapEncoderを見ると、ワイヤで何が送信されるのかを正確に見ることができます。

1

私は最近、Flexアプリケーションを使用して消費した.NET RESTインターフェイスを使用しました。いくつか奇妙な例外もありました。私の問題は、リクエストを送信するときにルート要素のxmlns(ネームスペース)に含めるのを忘れてしまったことです。これは野生の推測ですが、私はそれが助けてくれることを望みます。

関連する問題