Recent

Author Topic: replacing SOAP service made in delphi by Web Service toolkit in Lazarus  (Read 4189 times)

Bazic

  • Newbie
  • Posts: 6
I have soap service compiled in Delphi (not WST)
I wanto to replace this by Lazarus/WST implementation.
I exported wsdl from original service and I tried to import in Lazarus 1.6.4/WST 0.6 as server implementation.
Wsdl file was imported without errors and skeleton looks fine.

I have "some clients around" and I must keep the service compatible with original one.

Unfortunately existing clients cannot consume this new webservice. I tried to debug this using php soapclient class (which is working with original service) and it seems it has problems also.
When it parses wsdl it reports: SOAP-ERROR: Parsing WSDL: Unspecified encodingStyle
It never does actual method call. (Visible in Wireshark: client requests wsdl, server responds with wsdl and then nothing happen anymore)

What is funny - clients are compiled in Lazarus with WST client and they cann consume delphi based soap service flawlessly.

I need proper way how to setup WST parameters to act same like delphi based soap service.

I use TwstFPHttpListener but I guess changing it to indy or synapse will not help? Or am I wrong?.

Also I tried to do simple server and client using http transport but I was not able to achieve this.
Original WST examples does not containg one http transport soap server and compatible client.

Phil

  • Hero Member
  • *****
  • Posts: 2737
Re: replacing SOAP service made in delphi by Web Service toolkit in Lazarus
« Reply #1 on: October 04, 2017, 06:00:08 pm »
I need proper way how to setup WST parameters to act same like delphi based soap service.

Make sure you're using WST source from WST trunk.

I would suggest posting error reports to the WST forum. I doubt if you'll get much help here.

I note that several of the SOAP services I use have added REST services as an alternative to SOAP. REST is typically much easier to work with than SOAP since no WSDL file or parsing is needed, etc. I don't know if that's a possibility for you, but I throw it out there as an idea. (For anyone wondering about SOAP vs. REST, there are lot's of articles on that, for example: http://spf13.com/post/soap-vs-rest/).

In my experience with WST, manual changes to the source generated by parsing the WSDL file is often needed.

Bazic

  • Newbie
  • Posts: 6
Re: replacing SOAP service made in delphi by Web Service toolkit in Lazarus
« Reply #2 on: October 04, 2017, 06:27:46 pm »
Like I wrote: I have working SOAP solution: lazarus/WST client ---> delphi server but I need to replace server part while not touching clients.

Your advice would be good for new project, thanks.


Phil

  • Hero Member
  • *****
  • Posts: 2737
Re: replacing SOAP service made in delphi by Web Service toolkit in Lazarus
« Reply #3 on: October 04, 2017, 06:46:06 pm »
Like I wrote: I have working SOAP solution: lazarus/WST client ---> delphi server but I need to replace server part while not touching clients.

I would guess the client part of WST gets more use than the server part.

Again, I would post error to the WST forum if you haven't already.

 

TinyPortal © 2005-2018