<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>Comments for Building a stand-alone Web service with Indy</title>
<link rel="alternate" type="text/plain" href="http://edn.embarcadero.com/article/27513" title="Building a stand-alone Web service with Indy" />
<link rel="self" type="application/atom+xml" href="http://edn.embarcadero.com/article/27513/feed" title="Comments for Building a stand-alone Web service with Indy" />
<id>http://edn.embarcadero.com/article/27513</id>
<updated>2009-11-08T00:43:15-08:00</updated>
<entry>
<title>Building a stand-alone Web service with Indy</title>
<author>
<name>Craven Weasel</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=42221</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=42221</id>
<updated>2009-05-10T10:26:09-07:00</updated>
<published>2009-05-10T10:26:09-07:00</published>
<summary>Building a stand-alone Web service with Indy</summary>
<content>The new download link is: http://cc.embarcadero.com/Item/16364</content>
</entry>
<entry>
<title>&quot;xml document must have a top level element&quot; error</title>
<author>
<name>Robert Petek</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=41840</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=41840</id>
<updated>2008-12-03T08:18:30-08:00</updated>
<published>2008-12-03T08:18:30-08:00</published>
<summary>&quot;xml document must have a top level element&quot; error</summary>
<content>I had the same problem, when I tested a web service with the client. I used Delphi 2009 with Indy 10 and modified IdHTTPWebBrokerBridge.pas a bit. It looks the problem is in the TIdHTTPAppRequest.GetStringVariable function where Content property is filled with FRequestInfo.UnparsedParams. This is empty when it gets a POST command. I've debugged the code and saw the contents is in the FRequestInfo.PostStream. Try to set the result for the Content property to the PostStream contents when FRequestInfo.CommandType is hcPOST. You will also need to fix the result value for the ContentLength property. It worked for me.Cheers,Robert Petek</content>
</entry>
<entry>
<title>&quot;xml document must have a top level element&quot; error</title>
<author>
<name>Robert Petek</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=41839</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=41839</id>
<updated>2008-12-03T08:16:25-08:00</updated>
<published>2008-12-03T08:16:25-08:00</published>
<summary>&quot;xml document must have a top level element&quot; error</summary>
<content>I had the same problem, when I tested a web service with the client. I used Delphi 2009 with Indy 10 and modified IdHTTPWebBrokerBridge.pas a bit. It looks the problem is in the TIdHTTPAppRequest.GetStringVariable function where Content property is filled with FRequestInfo.UnparsedParams. This is empty when it gets a POST command. I've debugged the code and saw the contents is in the FRequestInfo.PostStream. Try to set the result for the Content property to the PostStream contents when FRequestInfo.CommandType is hcPOST. You will also need to fix the result value for the ContentLength property. It worked for me.Cheers,Robert Petek</content>
</entry>
<entry>
<title>&quot;xml document must have a top level element&quot; error</title>
<author>
<name>Robert Petek</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=41838</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=41838</id>
<updated>2008-12-03T08:15:35-08:00</updated>
<published>2008-12-03T08:15:35-08:00</published>
<summary>&quot;xml document must have a top level element&quot; error</summary>
<content>I had the same problem, when I tested a web service with the client. I used Delphi 2009 with Indy 10 and modified IdHTTPWebBrokerBridge.pas a bit. It looks the problem is in the TIdHTTPAppRequest.GetStringVariable function where Content property is filled with FRequestInfo.UnparsedParams. This is empty when it gets a POST command. I've debugged the code and saw the contents is in the FRequestInfo.PostStream. Try to set the result for the Content property to the PostStream contents when FRequestInfo.CommandType is hcPOST. You will also need to fix the result value for the ContentLength property. It worked for me.Cheers,Robert Petek</content>
</entry>
<entry>
<title>re: Building a stand-alone Web service with Indy - Problems with THTTPRIO URL property</title>
<author>
<name>Patrick Krause</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=41640</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=41640</id>
<updated>2008-10-05T07:54:04-07:00</updated>
<published>2008-10-05T07:54:04-07:00</published>
<summary>re: Building a stand-alone Web service with Indy - Problems with THTTPRIO URL property</summary>
<content>I have the same problem like Steven Barlow, with Indy 10: Everthing looks fine, the wsdl was published well, but if I want to use a real client against our server, there comes an error message in the server while handling the request: &quot;xml document must have a top level element&quot;. I debuged and found out, that the server doesnt get the xml-request stream, he is empty (size = 0) and so the MSXML-parser sees no request SOAP-XML. At the beginning of request-handling, in IndyApp/IndyHTTP, there is the request-XML correclty, but it seemes that it got lost in &quot;THTTPSoapPascalInvoker.DispatchSOAP&quot; or &quot;TSoapPascalInvoker.Invoke&quot; ... the request stream size is zero there. The client was made by the Delphi &quot;WSDL-importer&quot; and is very simple, he only calls to the only server function by using the standard httprio-call. If I configure the THTTPRIO (&quot;UseWSDL = True&quot;), so it works with WSDLocation=True, I also get the error in the server. Very frustating ...Does anybody have a solution or a hint for me?Regards,Patrick Krause</content>
</entry>
<entry>
<title>Building a stand-alone Web service with Indy</title>
<author>
<name>MENANT didier</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=35035</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=35035</id>
<updated>2003-07-31T11:45:24-07:00</updated>
<published>2003-07-31T11:45:24-07:00</published>
<summary>Building a stand-alone Web service with Indy</summary>
<content>This article is very interresting for me.The server and client function normaly, but I have a probl&#232;m ondestroy WebModule with the several Cds include.on first destroy==&gt; okon second destroy==&gt; error  ??   procedure TWMain.WebModuleDestroy(Sender: TObject);begin      if assigned(CdsBiofile) then        freeAndNil(CdsBiofile);      if Cds1 &lt;&gt; nil then        freeAndNil(Cds1);      if Cds2 &lt;&gt; nil then        freeAndNil(Cds2);      if  Cds3 &lt;&gt; nil then         freeAndNil(Cds3);  end;  I modified with other article the destroy in IndyApptdestructor TIndyApplication.Destroy;begin  FServer.Free;  inherited;  FFactory.Free;end;but same probl&#232;m    </content>
</entry>
<entry>
<title>Building a stand-alone Web service with Indy</title>
<author>
<name>Bernhard Ebner</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=34230</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=34230</id>
<updated>2003-03-07T08:00:04-08:00</updated>
<published>2003-03-07T08:00:04-08:00</published>
<summary>Building a stand-alone Web service with Indy</summary>
<content>I used this example and built my own Application. I have now a simple Exe which offers webservices on a spezial Port to other Programms. Great stuff.Building my own example I found an error in the example code. In the unit IndyApp the destroy function should be:destructor TIndyApplication.Destroy;begin  FServer.Free;  inherited;  FFactory.Free;end;In the original the FServer.Free; is missing. On most PC's this is no big deal on an older Compaq-Server I had the problem, that after an reboot the programm didn't start again. I had to do a second reboot to solve the problem. The reason for that behaviour was, that the Webservice Port was still blocked on the network-card. With an FServer.Free; this doesn't happen.Greetings from Cologne/GermanyBernhard Ebner</content>
</entry>
<entry>
<title>Building a stand-alone Web service with Indy - Problems with THTTPRIO URL property</title>
<author>
<name>Steven Barlow</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=33631</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=33631</id>
<updated>2002-11-27T15:50:22-08:00</updated>
<published>2002-11-27T15:50:22-08:00</published>
<summary>Building a stand-alone Web service with Indy - Problems with THTTPRIO URL property</summary>
<content>  I can only get this source to work with the THTTPRIO client component if I configure it using the WSDLLocation property. If I try to use the URL property of the THTTPRIO component then the SOAP Server returns an empty response. I believe the problem is something to do with the THTTPRIO component making a POST request as opposed to a GET request when the URL property is set, rather than the WSDLLocation property. The Indy HTTP server component does not seem to recieve the request details for a POST request (but this analysis could be wrong ;o) )  Has anybody else noticed this issue, and more importantly, has anybody found a solution?  Cheers, Steven.  PS Other than this issue the article and source is excellent and very useful.</content>
</entry>
<entry>
<title>Building a stand-alone Web service with Indy - and plain old WebBroker/D6 Pro</title>
<author>
<name>Rafe Aldridge</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=30853</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=30853</id>
<updated>2001-12-11T06:24:46-08:00</updated>
<published>2001-12-11T06:24:46-08:00</published>
<summary>Building a stand-alone Web service with Indy - and plain old WebBroker/D6 Pro</summary>
<content>Thanks for a great article/source. Just to let you know that all works well with ordinary WebBroker under Delphi 6 Pro (ie SOAP/Enterprise not required).</content>
</entry>
<entry>
<title>re: code-central</title>
<author>
<name>J.D. Hildebrand</name>
<uri>http://threads.embarcadero.com/threads/threads.exe/userall?commentid=29763</uri>
</author>
<id>http://threads.embarcadero.com/threads/threads.exe/view?commentid=29763</id>
<updated>2001-08-29T09:16:54-07:00</updated>
<published>2001-08-29T09:16:54-07:00</published>
<summary>re: code-central</summary>
<content>Hi Kjell.I just tried the link -- CodeCentral works for me.Here is the link:http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=16364Maybe your firewall is seeing &quot;ccweb.exe&quot; and freaking out?What browser do you use?Thanks for writing...and good luck.J.D.P.S. Let me know if you'd like me to e-mail you the code. Reach me at jdhildebrand@borland.com.</content>
</entry>
</feed>
