SOAP webservice in Delphi. Best option?

Hello all,

I need to implement a SOAP web service in Delphi (it will be an ISAPI) that will be under heavy load (=many concurrent calls).

I'd like to know which would be the best ISAPI/SOAP framework available. My web service must do some very "expensive"  initialization (load some huge XML files that cannot be shared between threads) and it would be nice if I could re-use those resources again in the next call, so it would be very nice if the framework could do thread pooling. 

Also, is the Delphi soap server wizard still "current", or is it deprecated?

Kind regards,
Arthur
0
Arthur
11/10/2014 2:56:46 PM
embarcadero.delphi.webservices 976 articles. 0 followers. Follow

5 Replies
946 Views

Similar Articles

[PageSpeed] 33

> {quote:title=Arthur Hoornweg wrote:}{quote}
> Hello all,
> 
> I need to implement a SOAP web service in Delphi (it will be an ISAPI) that will be under heavy load (=many concurrent calls).
> 
> I'd like to know which would be the best ISAPI/SOAP framework available. My web service must do some very "expensive"  initialization (load some huge XML files that cannot be shared between threads) and it would be nice if I could re-use those resources again in the next call, so it would be very nice if the framework could do thread pooling. 
> 
> Also, is the Delphi soap server wizard still "current", or is it deprecated?
> 
> Kind regards,
> Arthur

Hi,

You should migrate to REST.

Indy or IntraWEB may be used.

Regards.
0
Hafedh
11/10/2014 4:11:21 PM
Take a look on mORMot, it implements a RESTful server. 

It is very stable and ready for the load you need, it is opensource and very 
well documented.

http://blog.synopse.info/post/2014/01/10/RESTful-mORMot

If you need OData instead, there is XData from TMS that is either very stable 
and easy to create webservices:

http://www.tmssoftware.com/site/xdata.asp

I am using XData and it is ZERO problems. Their support is fantastic and 
the price is appropriate.

I have read a lot of mORMot and know programmers that are using and have 
really a great experience.

Both are based on http.sys layer to implement the service, so you will be 
in good hands.

Eduardo


> Hello all,
> 
> I need to implement a SOAP web service in Delphi (it will be an ISAPI)
> that will be under heavy load (=many concurrent calls).
> 
> I'd like to know which would be the best ISAPI/SOAP framework
> available. My web service must do some very "expensive"
> initialization (load some huge XML files that cannot be shared between
> threads) and it would be nice if I could re-use those resources again
> in the next call, so it would be very nice if the framework could do
> thread pooling.
> 
> Also, is the Delphi soap server wizard still "current", or is it
> deprecated?
> 
> Kind regards,
> Arthur
0
Eduardo
11/10/2014 4:48:10 PM
> Hi,
> 
> You should migrate to REST.
> 


That's absolutely not an option, the web service needs to implement an oil industry standard that happens to be SOAP based.
0
Arthur
11/11/2014 9:12:48 AM
> {quote:title=Eduardo Elias wrote:}{quote}
> Take a look on mORMot, it implements a RESTful server. 
> 
> It is very stable and ready for the load you need, it is opensource and very 
> well documented.
> 
> http://blog.synopse.info/post/2014/01/10/RESTful-mORMot
> 
> If you need OData instead, there is XData from TMS that is either very stable 
> and easy to create webservices:


I think neither are an option. The server needs to implement a certain well-defined SOAP webservice and it will run on our company's IIS web server which also delivers web pages, so I don't have the http/https port all for myself.
0
Arthur
11/11/2014 9:17:00 AM
Hi Arthur,

I can remember someone posted an announcement here recently about an alternative to delphi Httprio soap  with a product named besasoap  http://www.besasoftware.com/?action=besasoap

https://forums.embarcadero.com/thread.jspa?messageID=667468򢽌

But I did not test it. Looks interresting, but like every new product there's a risk the compagny may disapear if the sales don't go well. On the other hand, SOAP is a protocol that is pretty stable now and did not change for years, Thus limiting the risk of requiring updates.

I'm using Httprio since this solution did not exist at the time I started my project. There are plenty of pitfalls with Thttprio and wsdlimp.
Notably, wsdlimp gets lost when complex datatype are used. Nothing manually unsolvable, but still requires to hack the generated code.

Important: Both solutions lack MTOM/XOP features if you want to send/get attachements.

Cheers
0
Christophe
11/17/2014 10:04:33 AM
Reply:

Similar Artilces:

Delphi Webservice
Hello, I have created one webservice using indy TIdHTTPWebBrokerBridge and also created the client. Now I need to way to pass some file which will be reside on my server path to the client thorugh SOAP. The picture is as follows: 1) I have some fastreport files on the server 2) The client will show those report on the client side. There will be no fr3 files in the client side. Also I don't want to use FastReport Client/Server technology, as my client does not want this. 3) I don't want to save the fr3 files in the client side also. How to call this report from Client...

Delphi 2010 webservice consumer pass null strings to webservice [Edit]
Hello, I need to consume a webservice that is developed in java ( thas all that I know ). I have a HTTPRIO componente and have import the webservice file win the WSDL importer. Til here everything is allright but when I run the application all the parameters reach the webservice as null. I have made some webservice and consumers but I never have had problems ( I make the server and the client ) I test to do the same with prism and c++ bilder and it go allright, but I need it to do in delphi Thanks PD: Pleas be patient, my English is not good Edited by: Adrian Zussino on Sep 8, 2010 3...

Delphi
Hi, I have a webservice from SAP, it has one operation "ZMymcsCustomersMulti" <wsdl:operation name="ZMymcsCustomersMulti"> <wsp:Policy> <wsp:PolicyReference URI="#OP_ZMymcsCustomersMulti"/> </wsp:Policy> <wsdl:input message="tns:ZMymcsCustomersMulti"/> <wsdl:output message="tns:ZMymcsCustomersMultiResponse"/> </wsdl:operation> As you can see the return value should be of the type "ZMymcsCustomersMultiResponse". After I imported this service into my delphi p...

Delphi SOAP (WebServices) demos are back on CodeCentral!
Anybody doing WebServices/SOAP programming on delphi who remembers the Delphi 2007 era demos, might be happy to know that I've fixed them up and posted them on CodeCentral. Since that code belongs to Embarcadero, I'd like to thank Embarcadero for giving permission to me to post this code on CodeCentral: http://cc.embarcadero.com/item/28789 Anybody who has bug reports for this code can email me at warren dot postma at gmail dot com. It is possible that I might set up a version control system (bitbucket) if that's needed, and if Embarcadero has no problem with that. I w...

How to recover a SOAP Header in a Delphi Win32 WebService?
I'm trying to implement authentication across of SOAP header in my webservice. The WebService is developed in Delphi XE (Win32) and is accessed by application an .NET (C #). I could not find documentation and working examples of a webservice with this type of authentication.The other option would be to create parameters in all functions of the webservice passing the username and password, but would not want to do this. Declared in the interface (INTF) a class of type "TSoapHeader" with the properties you need in this case, username and password! {code} THeader = class(...

Delphi Webservices Application
I am trying to run a webservice client on Windows XP that accesses a server on windows server 2003. I get the following error: "Receieved content of invalid Content-Type setting: text/html - SOAP expects text/xml" when I call a function on the server. I don't get this error if both the server and client are running under windows xp. I have compiled both the client and server on windows XP with Delphi 7. What could be the cause of the error? Pier Pier Nardin wrote: > I am trying to run a webservice client on Windows XP that accesses a > server on windows s...

Deploy WebService from Delphi XE2
Hi, I was develop WebService in RAD Studio XE2 (CGI standalone app) and after development procedure (copy webservice module and midas.dll) server raise me an error: -- Sasa Mihajlovic --- Life is to short to be boring, keep smiling... HTTP Error 404.3 - Not Found The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map. Module StaticFileModule Notification ExecuteRequestHandler Handler StaticFile Error Code 0x80070032 Requested URL http://www.msdaio.c...

Delphi 2007
Hello, I have a problem, I think Delphi generates the body of a request false. [code] <SOAP-ENV:Body> <sucheStrasseByPLZPattern xmlns="http://lallaaallaaaa.info"> <pattern> <hausnummer xmlns=""/> <ort xmlns=""/> <ortteil xmlns=""/> <plz xmlns="">03048</plz> <strasse xmlns="">Kiefer</strasse> <zone xmlns=""/> </pattern> </sucheStrasseByPLZPattern> </SOAP-ENV...

Delphi Webservices application #2
I have written a CGI webserver and client with Delphi 7 that work fine in windows XP, but not in windows server 2003. When I type the server's address into internet explorer on the windows 2003 server machine I cannot read the WSDL interfaces for the server using internet explorer. However, I can read them on another XP machine. So, I tried writing the server as an ASAPI dll. I can now read the WSDL interfaces for the server using internet explorer. However, the client application does not work with the ASAPI server. I get the following error: "Received content of inval...

Delphi and Delphi for .Net
It seems that Delphi for .Net is slower than Delphi Win32 native applicaiton. I would like to know is it true all .Net application is slower than Win32 native applicaiton or it is Delphi for .Net only. Your information is great appreciated, Inung On 2011-06-21 18:20:17 +0100, Inung Huang said: > It seems that Delphi for .Net is slower than Delphi Win32 native applicaiton. > I would like to know is it true all .Net application is slower than > Win32 native applicaiton or it is Delphi for .Net only. If you are only running the code in the application once then, yes, yo...

Delphi 7 to Delphi 2009 migration
Hello, for migrating a Delphi 7 application to Delphi 2009, I wonder if there is some kind of best practices guide available? For example, general pitfalls to watch out, ... or a tool which analyse the current code base in respect to problems with Delphi 2009. Basically it is a BDE based application accessing a MSSQL database. The only third-party component in use is an ActiveX thingy integrating a reporting engine. Thanks, Thomas At CodeRage 2008 session there is this Migrating your Applications to the Latest Delphi Many developers use Delphi 5, 6, 7, 2005, 2006 ...

Delphi 2010 WebService Array Parameter
Hi, I created a WebService that returns an array of a TRemotable object (Custom structure) with D2010. When the WS is consumed by a Delphi-Client everything works perfect. But when I try to consumed the WS from a MS_C#.net-Client I get errors telling me the xml structure is incorrect. Any help would be really appreciated. Cheers, Eduardo Hi Eduardo, > I created a WebService that returns an array of a TRemotable object (Custom > structure) with D2010. So do I ;-) > When the WS is consumed by a Delphi-Client everything works perfect. But > when I try to...

Delphi send null string to webservice
Hi, I'm using my WebService from Delphi application, but, in my webservice, the parameter's value always get null [WebMethod]int ExecSQL(string ASQL){  // here, ASQL is null....hoooowww????  //do my query  return(AffectedRows);} I've been tried to use [SoapRpcMethod] but, with him, I cannot can load from Delphi my wsdl...I'm using RemObjects 3.0.3 Version thanks...

Does not appear the node webservices in Delphi Projects
Hi I using D2007 version enterprise and the SO of my PC is windows vista, when deal to create an application webservices, does not appear the node webservices in Item Categories of Delphi Projects. Can anyone help? Arturo Medina wrote: > I using D2007 version enterprise and the SO of my PC is windows > vista, when deal to create an application webservices, does not > appear the node webservices in Item Categories of Delphi Projects. > > Can anyone help? You must create a vcl aplication first, then add the webservice items. -- Cesar Romero http://www....

Web resources about - SOAP webservice in Delphi. Best option? - embarcadero.delphi.webservices

webservices Articles, Posts, Blogs, Videos - Technorati
— Authority: The job consist in a PHP program that read a file, compose a message (email or sms) and call an API of email provider (Amazon SES) ...

Section: software:webservices
Wired.com © 2012 Condé Nast. All rights reserved. Use of this Site constitutes acceptance of our User Agreement (effective 3/21/12) and Privacy ...

Products - CrunchBase
Product profiles

App Search on Flickr - Application Sharing!
Flickr is almost certainly the best online photo management and sharing application in the world. Show off your favorite photos and videos to ...

Wikipedia:Press coverage 2005 - Wikipedia, the free encyclopedia
If you add an article, please cite both the title and the source. Note that if you're listing an article from a traditional press wire service ...

Entity–relationship model - Wikipedia, the free encyclopedia
In software engineering , an entity-relationship model ( ER model for short) is an abstract and conceptual representation of data . Entity-relationship ...

Entity-relationship model - Wikipedia, the free encyclopedia
In software engineering , an entity-relationship model ( ER model for short) is an abstract and conceptual representation of data . Entity-relationship ...

IT and Telecommunications Jobs in Melbourne Metro - MyCareer
Find IT and Telecommunications Jobs in Melbourne Metro on MyCareer. Fresh IT and Telecommunications Jobs posted daily. Free email alerts and ...

AWS Elastic Beanstalk: A Quick and Simple Way into the Cloud
Flexibility is one of the key principles of Amazon WebServices - developers can select any programming language and software package,any operating ...

How To Use the Amazon SDK for Android to Upload Photos to Amazon S3
This article demonstrates how to use the AWS SDK for Android to upload an image to Amazon Simple Storage Service (S3) from your mobile device ...

Resources last updated: 12/5/2015 12:29:08 AM