REBOL/Interoperability/SOAP
[1/2] from: cybarite::sympatico::ca at: 23-Aug-2002 21:24
Hi,
Anyone have any more information on how REBOL will support SOAP in the near term?
If there is background work going on, I would be pleased to hear about it.
[2/2] from: patrick:scotto:wanadoo at: 24-Aug-2002 9:17
hello,
try these links :
http://www.rebolforces.com/zine/rzine-1-02.html#sect6. for explanation and
this one to get library
http://www.compkarori.co.nz/reb/http-tools-beta.r
and test that with a soaptest.r as joined
[cybarite--sympatico--ca] wrote:
>Hi,
>Anyone have any more information on how REBOL will support SOAP in the near term?
>If there is background work going on, I would be pleased to hear about it.
>
-- Attached file included as plaintext by Listar --
-- File: soaptest.r
REBOL [
Title: "SOAP tester 1.0.1"
Date: [16-Apr-2001]
Author: "Graham Chiu"
File: %soaptest.r
Email: [gchiu--compkarori--co--nz]
Rights: "copyright G Chiu 2001"
Version: 1.0.1
Purpose: {
To send SOAP messages emulating http://soapclient.com/soapclient
"This is a tool for testing web services. A good web service needs to
be interoperable with many SOAP clients, which many send different,
yet valid, messages for the same service. The tool can be used to simulate
such situations. You can change schemas, namespaces, and variable values
to test if your service is really SOAP 1.1 compliant. "
}
Notes: {
}
]
do load-thru/update http://www.compkarori.co.nz/reb/http-tools-beta.r
soap-url: http://soapclient.com/xml/soapresponder.wsdl
soap-action: "http://www.SoapClient.com/SoapObject"
soap-request: {<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://www.SoapClient.com/xml/SoapResponder.wsdl"
xmlns:xsd1="http://www.SoapClient.com/xml/SoapResponder.xsd"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/xml/soap/"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<mns:Method1 xmlns:mns="http://www.SoapClient.com/xml/SoapResponder.xsd">
<bstrParam1 xsi:type="xsd:string">{$bstrParam1}</bstrParam1>
<bstrParam2 xsi:type="xsd:string">{$bstrParam2}</bstrParam2>
</mns:Method1>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>}
cleanup: does [ replace/all soap-request newline " " replace/all soap-request {^-} "
" ]
sendsoap: does [
either any [ empty? f-msg/text empty? f-server/text ]
[ alert "Server Address and SOAP Message fields need to be filled in!" ]
[
f-res/text: copy "Server Response Appears Here"
show f-res
srequest: f-msg/text
replace/all srequest newline " "
tmp: http-tools/soap f-server/text reduce [ f-action/text srequest ]
; use this alternative if you want to debug
; tmp: http-tools/soap/debug f-server/text reduce [ f-action/text srequest ]
f-res/text: copy tmp/content
f-status/text: copy tmp/http-response
]
]
lo: [
style tx label 120x24 right
style btn button 80x24
style fld field 420x24
origin 10x10
vh4 "Rebol SOAP Tester:"
across space 2x1
tx "Server Address:" f-server: fld to-string soap-url return
tx "SOAPAction" f-action: fld to-string soap-action return
tx "SOAP Message:" f-msg: area wrap 420x200 soap-request
sld: slider 16x200 [scroll-para f-msg sld] return
tx "SOAP Response:" f-res: area wrap 420x200
sld2: slider 16x200 [scroll-para f-res sld2] return
tx "Server Status:" f-status: info 420x24 return
below at 10x155 space 0x4
btn "Evaluate" #"^E" [submit]
btn "Clear" [clear-all]
btn "Default" [ default ]
btn "Close" escape [close-em]
]
default: does [
clear-all
f-server/text: to-string copy soap-url
f-action/text: copy soap-action
f-msg/text: copy soap-request
f-res/text: copy "Server Response Appears Here"
show soap
]
clear-all: does [
f-msg/text: copy ""
f-res/text: copy "Server Response Appears Here"
f-msg/line-list: none
clear-fields soap
show soap
focus f-server
]
submit: does [
result: {Your message has been sent.}
sending: flash "Sending..."
sendsoap
unview/only sending
show f-res show f-status
]
close-em: does [unview]
view center-face soap: layout lo