我们有一个使用HttpWebBrokerBridge的应用程序,它在Delphi2006中运行良好但是当我使用Delphi2009重新编译时,我收到EDOMParserError异常,消息“XML文档必须有顶级元素”。
我没有任何关于导致此错误的线索。
关于我应该做什么的任何线索?
和Sandeep
答案 0 :(得分:1)
请参阅How to build stand-alone SOAP web services using Delphi?
特别是
Indy 10 and IdHTTPWebBrokerBridge with CBuilder 2009中的人发布了修改后的版本。对于 例, IdHTTPWebBrokerBridge.pas是 Jochanan van der Niet。
根据Robert Petek,
我使用Delphi 2009和Indy 10和 修改后的IdHTTPWebBrokerBridge.pas a 位。看起来问题就在于 TIdHTTPAppRequest.GetStringVariable 功能Where属性是什么 洋溢着 FRequestInfo.UnparsedParams。这是 当它获得POST命令时为空。 我调试了代码并看到了 内容在 FRequestInfo.PostStream。
尝试设置内容的结果 PostStream内容的属性 当FRequestInfo.CommandType是 hcPOST。你还需要修复 ContentLength的结果值 属性。它对我有用。
答案 1 :(得分:1)
确保您使用的是SVN Tiburon分支的Indy 10最新10.5.5快照。对TIdCustomHTTPServer和TIdHTTPWebBrokerBridge的更改在此前已合并到该代码库中。