Jobs!
Meetups by TopicMeetups by CityStart a MeetupWhat's Meetup
Also in: C/C++ · C# · Web Technology

Join Oslo Delphi Club!

We'll never share your email address without your permission. Already a Meetup member? Sign in.

Messages

Delphi 2007/Win 32 og SOAP

Message Board › Delphi 2007/Win 32 og SOAP

Petter Topp
user 3399907
Oslo, NO
1st Post

Jeg arbeider med en Win32 applikasjon i Delphi 2007.
Ønsker nå å legge til funksjonalitet for å hente informasjon fra en Web-service som bruker SOAP og en WSDL-fil som beskriver kommunikasjonen.

Det jeg lurer på er om jeg kan implementere SOAP og bruk av WSDL i min win32 applikasjon?
Jeg ser at jeg har noen SOAP objekter tilgjengelige, men i hjelp sammenheng snakkes det mye om .Net støtte....
Setter stor pris på om noen kunne hjelpe meg inn i dette emnet.

Vennlig hilsen
Petter Topp
ATC Data as

Morten Jacobsen
user 3261030
Oslo, NO
1st Post

Hei Petter.

Jeg har brukt webservices mye i win32 applikasjoner skrevet i Delphi (fra versjon 7 til 2007). Selve webservicene har jeg skrevet i Visual Studio.net, 2005 og 2008 versjonen. Jeg aksesserer webservicene fra win32 applikasjoner skrevet i Delphi og fra web applikasjoner/andre web services skrevet i VS.

I delphi (2007) gå til File-New-Other
gå til WebServices og velg wsdl importer.

I plasseringen angir du http adressen til webservicen din etterfulgt av ?wsdl for å få beskrivelsen av tjenesten.

Vips så har Delphi generert en fil til deg (obs. bug tidligere versjoner av Delphi, men fikses med 1 linje. Får du ikke "consumed" web servicen så si ifra. Da skal jeg lete opp fix'en)

Legg til uses på webservice beskrivelse fila i den unit'en du skal consume webservicen.

Deklarer en variabel av type "webservicen din"

var
MinWebservice: wsSecurityLayer;

Navnet på typen finner du i webservice fila.
Under
type
wsSecurityLayer = interface(IInvokable)

Så instansierer du variabelen din:
wsSecurityLayer := GetwsSecurityLayer;
Rett før implementation i webservice beskrivelse fila har du en "Get" funksjon.


Så er det bare å kalle procedures og functions på webservicen din på helt vanlig måte.

mvh

Morten

Petter Topp
user 3399907
Oslo, NO
2nd Post

Takk for super informasjon Morten.

Men hvor kommer SOAP protokollen inn i bildet?

Petter

Petter Topp
user 3399907
Oslo, NO
3rd Post

Hei igjen Morten.

I min delphi 2007 finnes det ingen WSDL Importer.
Dette skyldes vel at jeg kjører Delphi2007 (Win32) versjonen.
Du har vel RAD Studio 2007?

Petter

Morten Jacobsen
user 3261030
Oslo, NO
2nd Post

Hei.

Beklager sent svar. Hatt fri i noen dager.
Send meg gjerne mail, ikke så ofte jeg er her inne...

Jeg kjører CodeGear? Delphi® 2007 for Win32® Version 11.0.2902.10471
Ikke noe Studio versjon.

Du jobber med et "VCL forms application - Delphi for win32" prosjekt?

Vær obs på at du ikke kan høyreklikke på prosjektet ditt (i project manager) og prøve å finne wsdl importer der. Du må gå på filmeny File-New-Other
Og under kategoriseringen "Delphi projects" skal du finne WebServices. Her skal WSDL importer være.

Mvh

Morten

Morten Jacobsen
user 3261030
Oslo, NO
3rd Post

Ser også at du spurte noe om hvor SOAP protokollen kom inn i bildet.

SOAP er vel bare protokollen for hvordan XML data er organisert i XML stream'en.
Ved kombinasjonen jeg har brukt, SOAP over HTTP, behøver man egentlig ikke tenke på noe av dette.

mvh

Morten

Powered by mvnForum