[Delphi + PHP] Soap voor database-gegevens?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • pelleke
  • Registratie: Maart 2003
  • Laatst online: 08-11-2024

pelleke

Aut viam inveniam aut faciam

Topicstarter
Hallo! Ik probeer al een tijdje een multi-tier delphi applicatie te maken die verbinding moet maken met een remote MySQL-server. Daarin zitten namelijk wat tabellen, en die wil ik twee kanten op in een TClientDataSet poepen. Ik heb dat op een aantal manieren handmatig geprobeerd, maar het resultaat is niet om over naar huis te schrijven.

Nu wil ik compleet in PHP een webservice maken die kan praten met het delphi-component TSoapConnection. Hierbij zou ik natuurlijk goed gebruik kunnen maken van een SOAP-implementatie in PHP, maar nu kan ik nergens informatie vinden over hoe ik zoiets aanpak. Mijn opzet zou als volgt moeten zijn

TClientDataSet <----> TSoapConnection <---> PHP Webservice <---> MySQL database.

Het gekke is dat mijn ClientDataSet vraagt om een Data Provider, terwijl ik nergens kan zien hoe het toewijzen van zo'n data provider met SOAP in zijn werk gaat. (googlen op soap "data providers" levert geen zinnige resultaten op, als ik er PHP bij zet wordt 't nog gekker. :) ) Zo weet ik dus ook nooit of, en zo ja: hoe een PHP webservice ervoor gebouwd moet worden...

Heeft iemand eerder in PHP voor Delphi een webservice gebouwd waarmee je een database kon aanspreken?

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 19:51

Creepy

Tactical Espionage Splatterer

Waarom denk je dat je een TSoapConnection rechtstreeks kan koppelen aan een TClientDataSet? Een TSoapConnection is heel iets anders dan een database connection.

Welke taal er gebruikt wordt voor de webservice maakt niet uit. Zolang de webservice en de aanroepende applicatie bijde aan de SOAP standaard voldoen maakt dat niet uit.
Hoe de webservice werkt, bepaal je zelf. Schrijf deze dus eerst. Daarna kan Delphi er een kant en klare bruikbare classe voor genereren zodat je vanuit Delphi de webservice kan aanspreken. Hoe je daarna de koppeling met en TClientdataSet doet moet je zelf regelen. Delphi kan niet automatisch een willekeurige webservice aan een TClientDataset koppelen omdat ze eigenlijk niks met elkaar te maken hebben.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • pelleke
  • Registratie: Maart 2003
  • Laatst online: 08-11-2024

pelleke

Aut viam inveniam aut faciam

Topicstarter
Creepy schreef op zondag 13 februari 2005 @ 12:59:
Waarom denk je dat je een TSoapConnection rechtstreeks kan koppelen aan een TClientDataSet? Een TSoapConnection is heel iets anders dan een database connection.
Ik kan bij een CDS.Connection gewoon een op mijn form gedumpte TSoapConnection planten, dus dat suggereert ernaar dat ik die gewoon kan gebruiken als dataconnectie. Maar dat kan ik inderdaad mis hebben.
Creepy schreef op zondag 13 februari 2005 @ 12:59:
Welke taal er gebruikt wordt voor de webservice maakt niet uit. Zolang de webservice en de aanroepende applicatie bijde aan de SOAP standaard voldoen maakt dat niet uit.
Hoe de webservice werkt, bepaal je zelf. Schrijf deze dus eerst. Daarna kan Delphi er een kant en klare bruikbare classe voor genereren zodat je vanuit Delphi de webservice kan aanspreken. Hoe je daarna de koppeling met en TClientdataSet doet moet je zelf regelen.
Hmm. Wat ik eigenlijk gewoon wil is een webservice maken die een paar tabellen in een MySQL database toegankelijk maakt voor Delphi, en dan zodanig dat ik ze met data-aware componenten kan gebruiken. Zou ik dan het beste een TCustomClientDataSet-descendant kunnen maken met een nieuwe procedure erbij?

Acties:
  • 0 Henk 'm!

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

pelleke schreef op maandag 14 februari 2005 @ 08:50:
Ik kan bij een CDS.Connection gewoon een op mijn form gedumpte TSoapConnection planten, dus dat suggereert ernaar dat ik die gewoon kan gebruiken als dataconnectie. Maar dat kan ik inderdaad mis hebben.
Dat klopt en dat kan. Het is onderdeel van de Midas/dataSnap architectuur van Borland. Meestal hangt er aan de andere kant ook een stuk Borland software (Delphi/Kylix), maar theoretisch zou het ook een php pagina kunnen zijn, als het maar precies doet wat er van doe soap interface verwacht wordt.

We adore chaos because we like to restore order - M.C. Escher