SOAP4R proxy support?

I can’t get SOAP4R to send requests though a proxy server. I’m setting the
proxy parameter passed to SOAP::Driver constructor (the 5th parameter) to
"http://server-name:8080" and I get back an HTTP response that says “Proxy
denies fulfilling the request”. I know I’m using the correct proxy server
name and port because I can invoke the same web service going through that
proxy server using Java and Axis. Has anyone successfully used SOAP4R with a
proxy server? If so, any idea what I might be doing wrong?

···

WARNING: All e-mail sent to and from this address will be received or
otherwise recorded by the A.G. Edwards corporate e-mail system and is
subject to archival, monitoring or review by, and/or disclosure to,
someone other than the recipient.


Hi,

From: “Volkmann, Mark” Mark.Volkmann@AGEDWARDS.com
Sent: Friday, October 04, 2002 10:21 PM

I can’t get SOAP4R to send requests though a proxy server. I’m setting the
proxy parameter passed to SOAP::Driver constructor (the 5th parameter) to
http://server-name:8080” and I get back an HTTP response that says “Proxy
denies fulfilling the request”. I know I’m using the correct proxy server
name and port because I can invoke the same web service going through that
proxy server using Java and Axis. Has anyone successfully used SOAP4R with a
proxy server? If so, any idea what I might be doing wrong?

Hmm. It works for me (squid).
Request format of http-access2/version G might not be acceptable
for some kind of proxy server.

Can you send me a wiredump? To get wiredump;

drv = SOAP::Driver.new( … )
drv.setWireDumpDev( File.open( “dump.log”, “w” ))
drv.callSomeMethod( … )

By the way, current CVS code has wsdlDriver
which reads WSDL file and connect to the server.
It works as below like current SOAP::Driver.

#!/usr/bin/env ruby
require ‘soap/wsdlDriver’

Current GoogleSearch beta2 server uses old XMLSchema(1999).

require ‘soap/XMLSchemaDatatypes1999’

You must get key from Google Code

authorizedKey = ARGV.shift

But the distributed WSDL file uses new XMLSchema(2001).

To create GoogleSearch1999.wsdl;

cat GoogleSearch.wsdl | sed -e ‘s/2001/1999/g’ > GoogleSearch1999.wsdl

driver = SOAP::WSDLDriverFactory.new( “GoogleSearch1999.wsdl” ).createDriver
driver.setHttpProxy( proxyUrl ) if needed
driver.setWireDumpDev( STDERR ) if needed
puts driver.doGetCachedPage( authorizedKey, “Ruby Programming Language” )

wsdlDriver.rb has not been tested well especially variation of WSDL files.
Are there anyone who can test wsdlDriver with your WSDL file?
You also can get WSDL files from http://www.xmethods.com/ .

Regards,
// NaHi

Hi,

From: “NAKAMURA, Hiroshi” nahi@mwd.biglobe.ne.jp
Sent: Friday, October 04, 2002 11:23 PM

I can’t get SOAP4R to send requests though a proxy server. I’m setting the
proxy parameter passed to SOAP::Driver constructor (the 5th parameter) to
http://server-name:8080” and I get back an HTTP response that says “Proxy
denies fulfilling the request”. I know I’m using the correct proxy server
name and port because I can invoke the same web service going through that
proxy server using Java and Axis. Has anyone successfully used SOAP4R with a
proxy server? If so, any idea what I might be doing wrong?

Hmm. It works for me (squid).
Request format of http-access2/version G might not be acceptable
for some kind of proxy server.

No. It was a bug of http-access2/G. I used another
CVS version…

I released http-access2/H. Get it from
http://www.ruby-lang.org/en/raa-list.rhtml?name=http-access2

Much thanks to Volkmann, Mark for finding this bug and
taking time to file a report.

Regards,
// NaHi

Thank you for fixing it!

I can’t wait to show you what I’ve done with SOAP4R. I have a working Ruby
version of the SWSAPI defined by ActiveState that is based on SOAP4R! I can
invoke a web service in two lines of code like this.

proxy = SWSAPI::WebService.new.serviceProxy(WSDL_URL)
temperature = proxy.getTemp(ZIPCODE)

WSDL_URL is a constant containing the URL of a WSDL file.
ZIPCODE is a constant containing some U.S. zipcode for which I want to know
the current temperature … since that’s what the web service I’m invoking
does.

I still have lots of work to do on supporting passing of Ruby objects and
complex XML Schema parsing, but the basics are there.

···

----- Original Message -----
From: “NAKAMURA, Hiroshi” nahi@mwd.biglobe.ne.jp
To: “ruby-talk ML” ruby-talk@ruby-lang.org
Sent: Friday, October 04, 2002 9:29 PM
Subject: Re: SOAP4R proxy support?

Hi,

From: “NAKAMURA, Hiroshi” nahi@mwd.biglobe.ne.jp
Sent: Friday, October 04, 2002 11:23 PM

I can’t get SOAP4R to send requests though a proxy server. I’m setting
the
proxy parameter passed to SOAP::Driver constructor (the 5th parameter)
to
http://server-name:8080” and I get back an HTTP response that says
“Proxy
denies fulfilling the request”. I know I’m using the correct proxy
server
name and port because I can invoke the same web service going through
that
proxy server using Java and Axis. Has anyone successfully used SOAP4R
with a
proxy server? If so, any idea what I might be doing wrong?

Hmm. It works for me (squid).
Request format of http-access2/version G might not be acceptable
for some kind of proxy server.

No. It was a bug of http-access2/G. I used another
CVS version…

I released http-access2/H. Get it from
http://www.ruby-lang.org/en/raa-list.rhtml?name=http-access2

Much thanks to Volkmann, Mark for finding this bug and
taking time to file a report.

Regards,
// NaHi

“Mark Volkmann” volkmann2@charter.net wrote in message
news:020001c26d3b$b59341e0$fdddcf18@C632294A…

Thank you for fixing it!

I can’t wait to show you what I’ve done with SOAP4R.
version of the SWSAPI defined by ActiveState that is based on SOAP4R! I
can
invoke a web service in two lines of code like this.

proxy = SWSAPI::WebService.new.serviceProxy(WSDL_URL)
temperature = proxy.getTemp(ZIPCODE)

To quote home Homer Simpsons boss, putting the fingers of each hand
together: “eeexcellent”.

Mikkel

Hi,

From: “Mark Volkmann” volkmann2@charter.net
Sent: Sunday, October 06, 2002 10:22 PM

I can’t wait to show you what I’ve done with SOAP4R. I have a working
Ruby
version of the SWSAPI defined by ActiveState that is based on SOAP4R!

Interesting. I found
ActiveState Community - Boosting coder and team productivity with ready-to-use open source languages and tools. .

I can
invoke a web service in two lines of code like this.

proxy = SWSAPI::WebService.new.serviceProxy(WSDL_URL)
temperature = proxy.getTemp(ZIPCODE)

I’m afraid that we are working same thing separately.
Currently, WSDL4R allow you like this;

require ‘soap/wsdlDriver’
proxy = SOAP::WSDLDriverFactory.new( WSDL_URL ).createDriver
temperature = proxy.getTemp( zipCode )

Released WSDL4R/0.0.1 does not have wsdlDriver.rb.

Get it from CVS repository at

http://www.ruby-lang.org/~knu/cgi-bin/cvsweb.cgi/lib/soap4r/

I still have lots of work to do on supporting passing of Ruby objects
and
complex XML Schema parsing, but the basics are there.

I’m fighting XML Schema, too. Current XML Schema
implementation in WSDL4R supports only complex content
complexType. Simple content complexType, simpleType,
element, attributes, ref, group, etc. are left.
Those won’t be completed forever I believe. sigh.

I’m looking forward to see yours released.

Regards,
// NaHi

From: NAKAMURA, Hiroshi [mailto:nahi@keynauts.com]
Sent: Tuesday, October 08, 2002 1:50 PM

I’m fighting XML Schema, too. Current XML Schema
implementation in WSDL4R supports only complex content
complexType. Simple content complexType, simpleType,
element, attributes, ref, group, etc. are left.

This means, i.e. it supports all SOAP encoding data types
(Struct, Array and base types) for RPC usase, but
does not support document usage (sending common XML
instance in SOAP envelope).

Regards,
// NaHi

From: NAKAMURA, Hiroshi [mailto:nahi@keynauts.com]
Sent: Tuesday, October 08, 2002 1:50 PM

I’m fighting XML Schema, too. Current XML Schema
implementation in WSDL4R supports only complex content
complexType. Simple content complexType, simpleType,
element, attributes, ref, group, etc. are left.

This means, i.e. it supports all SOAP encoding data types
(Struct, Array and base types) for RPC usase, but
does not support document usage (sending common XML
instance in SOAP envelope).

Regards,
// NaHi