Soap/wsdl

Dear All,

I am trying to understand and working out options.

I havent used web speed hence unaware of its capabilities.

Can SOAP/WSDL be implemented using PROGRESS?

TIA.

Kishor
 

rstanciu

Member
starting with v.10

Code:
/* client_ValidateEmail.p */
DEFINE VARIABLE hWebService AS HANDLE NO-UNDO.
DEFINE VARIABLE hXWebEmailValidationInterface AS HANDLE NO-UNDO.

CREATE SERVER hWebService.
hWebService:CONNECT("-WSDL 'http://ws.xwebservices.com/XWebEmailValidation/V2/XWebEmailValidation.wsdl'").

RUN XWebEmailValidationInterface SET hXWebEmailValidationInterface ON hWebService.

DEFINE VARIABLE Email AS CHARACTER NO-UNDO.
DEFINE VARIABLE Status1 AS CHARACTER NO-UNDO.

Email = "rstanciu@operamail.com".

RUN ValidateEmail IN hXWebEmailValidationInterface
  (INPUT Email, OUTPUT Status1).

MESSAGE Status1 VIEW-AS ALERT-BOX.

DELETE PROCEDURE hXWebEmailValidationInterface.
hWebService:DISCONNECT().
DELETE OBJECT hWebService.
 

TomBascom

Curmudgeon
In addition -- SOAP support is unrelated to Webspeed. Any OpenEdge 10 4gl session can call a web service.
 

rstanciu

Member
:) ... I have another 4GL sample:

Code:
/* client_GetExternalIP.p */

DEFINE VARIABLE hWebService AS HANDLE NO-UNDO.
DEFINE VARIABLE hGetExternalIP2Soap AS HANDLE NO-UNDO.
CREATE SERVER hWebService.
hWebService:CONNECT("-WSDL 'http://www.innergears.com/WebServices/GetExternalIP.asmx?WSDL'").
RUN GetExternalIP2Soap SET hGetExternalIP2Soap ON hWebService.
FUNCTION getExternalIp RETURNS CHARACTER
  IN hGetExternalIP2Soap.
MESSAGE  getExternalIp() VIEW-AS ALERT-BOX.
hWebService:DISCONNECT().
 
Gents,

Many Thanks. I am very new to SOAP and a customer was inquiring on the possibility. My next problem is how get the xml message into MFG/PRO. CIM is the only option in absence of source code.

Thanks again.
 

rstanciu

Member
here some samples.
Anyway, you dont't be warry about the WSDL, progress know how to document it.
All you have to known is the WSDL location (URL or file) and ...
use the progress tool "bprowsdldoc". Copy/Paste the connection example and the
running procedure/function.
 

Attachments

  • XML..zip
    19 KB · Views: 116

TomBascom

Curmudgeon
2000 pounds ;)

(It's American idiom for "thank you very much". Or, if I remember my pitiful French correctly "Merci beaucoup".)
 

israelm

New Member
starting with v.10

Code:
/* client_ValidateEmail.p */
DEFINE VARIABLE hWebService AS HANDLE NO-UNDO.
DEFINE VARIABLE hXWebEmailValidationInterface AS HANDLE NO-UNDO.

CREATE SERVER hWebService.
hWebService:CONNECT("-WSDL 'http://ws.xwebservices.com/XWebEmailValidation/V2/XWebEmailValidation.wsdl'").

RUN XWebEmailValidationInterface SET hXWebEmailValidationInterface ON hWebService.



DEFINE VARIABLE Email AS CHARACTER NO-UNDO.
DEFINE VARIABLE Status1 AS CHARACTER NO-UNDO.

Email = "rstanciu@operamail.com".

RUN ValidateEmail IN hXWebEmailValidationInterface
  (INPUT Email, OUTPUT Status1).

MESSAGE Status1 VIEW-AS ALERT-BOX.

DELETE PROCEDURE hXWebEmailValidationInterface.
hWebService:DISCONNECT().
DELETE OBJECT hWebService.

Hi there,
Im new with WebServices, i tryied this code and it works perfectly.
Could you please explain it line by line so i can get better understanding?

Im already involved with wsdl, soap and xml schema.

Version: 10.2.0.00
OpenEdge Release: 10.2A

I appreciate it.
Best Regards!

Israel M.
 

rstanciu

Member
try...
bprowsdldoc
http://ws.xwebservices.com/XWebEmailValidation/V2/XWebEmailValidation.wsdl
in a proenv console. This tool create for you the html documentation and example to use in 4GL.
No need to known WSDL/SOAP/etc. Take a look to the generated documentation.
 

rstanciu

Member
:rolleyes:
in the OpenEdge program group you find a shortcut to the proenv
(this is a DOS console + set all the environement variables like DLC, WRKDIR, PATH).
Click to proenv icon and type:
bprowsdldoc [location of WSDL URL or file]
... ? ... do you want a picture ?
 

redsuitee

Member
your sample code is also works for me..
but when I change the WSDL URL, I got this error message
Secure Socket Layer (SSL) failure. error code -54: unable to get local issuer certificate: for 594f1775.o in C:\OpenEdge\certs (9318)

help me plz..
 
Top