Release Notes - SOAP4R

Last modified: March 30, 2001
Created: July 17, 2000


0. In this document...

This is Release Notes of SOAP4R.

Target SOAP4R version: SOAP4R/1.2.0

  1. Changes
  2. Install
  3. Uninstall
  4. What is SOAP4R?
  5. Dependencies
  6. Restrictions
  7. History
  8. Author
  9. Copyright

1. Changes

Checked interoperability with Apache-SOAP, pocketSOAP/0.91, SOAP::Lite for Perl, and SOAP/Perl/0.28. It seems to work good except SOAP/Perl/0.28.

2. Install

Simply, get the archived file and extract it. Files in lib/soap are SOAP4R library program itself. To use this library, copy the directory lib/soap as 'soap' to suitable directory and require it like 'require "soap/..."' since there is no installer yet.

To play with SOAP4R, you also have copy redistributed files below in redist/ to suitable directory.

date3.rb
by Funaba-san (http://www.kt.rim.or.jp/~tadf/ruby-en.html)
parsedate3.rb
by Funaba-san (http://www.kt.rim.or.jp/~tadf/ruby-en.html)
http-access.rb
by Maehashi-san (http://www.jin.gr.jp/~nahi/Ruby/ruby.shtml#http-access)
uri.rb
by Koshimizu-san (http://www02.so-net.ne.jp/~greentea/ruby/uri/)

Files in archive:

lib/soap/
SOAP4R library program.
sample/
Sample program using SOAP4R.
sample/apacheClient.rb
SOAP-RPC client sample. It connects with demonstration server programs stockquote and addressbook in IBM's SOAP for Java or Apache-SOAP. You have to install the server either SOAP for Java or Apache-SOAP and deploy demostration programs.
To execute;
./apacheClient.rb http://localhsot:2020/ibm-soap/rpcrouter.jsp
sample/apacheServer.rb
SOAP-RPC CGI server sample emulates Apache-SOAP sample such as AddressBook. Interfaces such as getQuote and getAddressFromName are defined. Only interfaces, no implementation.
sample/RAA/*
SOAP-RPC client samples.
  • soap4r.rb, soap4rApp.rb: Ruby program using SOAP4R
  • xmlrpc4r.rb: Ruby program using xmlrpc4r
  • pocketSOAP.js: JScript program using pocketSOAP
  • SOAP::Lite.pl: Perl program using SOAP::Lite for Perl
There programs connect with testing RAA server on www.ruby-lang.org. Since the server is under testing phase so stable operation is not expected.
redist/
Redistributed programs which SOAP4R is using. I would appriciate to authors of these programs.
redist/archive/
Archives. Follow the term of each archive to use these programs.

3. Uninstall

Delete created files at installation.

4. What is SOAP4R?

'SOAP4R' is a Ruby library program to handle Simple Object Access Protocol (SOAP) 1.1 (W3C Note).

As Restrictions, SOAP4R offers only SOAP-RPC specific features now.

Comments, information such as interoperability between SOAP4R and another implementation are welcomed. Feel free sending mail to nakahiro@sarion.co.jp.

5. Dependencies

SOAP4R depends on below programs:

6. Restrictions

The following features of the SOAP 1.1 (W3C Note) spec are NOT currently supported:

7. History

1.2.0 - March 30, 2001
Checked interoperability with Apache-SOAP, pocketSOAP/0.91, SOAP::Lite for Perl, and SOAP/Perl/0.28. It seems to work good except SOAP/Perl/0.28.
  • Added href/id unmarshalling support. (href/id marshalling has not been supported yet)
  • Added SOAP's base64 type support.
  • SOAPTimeInstant -> SOAPDateTime. Following XML Schema PR.
  • SOAPStruct can have multiple accessor which have same name. Should I separate it from original SOAPStruct?
  • Unknown attribute in Header Item raised an exception. Omitted.
  • Router can handle methods which belong to different namespace.
  • Added an option to allow unqualified SOAP element.
  • Added Apache's Map type support. Ruby's Hash are mapped to it now. (Ruby's Hash marshalled by 1.1 processor in the old way can be unmarshalled, but 1.2 processor marshals it in the new way and 1.1 processor does not unmarshals it into Hash. Incompatibility between SOAP4R/1.2 and 1.1)
  • Unknown type 'unknown:SOAPStruct' was incorrectly unmarshalled into SOAPStruct. Fixed.
  • Added utility methods map! and members to SOAPArray and SOAPStruct.
  • Added methods request, response, and fault to SOAPBody.
1.1.0 - March 23, 2001
Made many changes. Since it is tested only for my limited use, please be careful to use. Any comments especially "cannot connect to XXX implementation" are welcomed. Feel free sending mail to nakahiro@sarion.co.jp.
  • Added RPC server support.
  • Divided RPC client/server implementation from core.
  • Added Date, Hash type support. (Unknown type is converted to Struct as usual)
  • Adopted Date in date3.rb by Funaba-san instead of Time as TimeInstant.
  • Many encoding/decoding bugs around SOAPArray and SOAPStruct were fixed.
1.0.2 - November 11, 2000
Since the previous package dated, refreshes some points.
  • Ruby: ruby 1.6.x
  • uri.rb: 4.22
  • sample: xml-soap/2.0
1.0.1 - July 27, 2000
Handles SOAP/1.1 arrays. 1.0.0 cannot handles SOAP/1.1 arrays... Bare in mind there still be many restrictions around SOAP arrays.
1.0.0 - July 17, 2000
It is the initial released version of SOAP4R. :-)

8. Author

Name
NAKAMURA, Hiroshi (aka NaHi or nakahiro)
E-mail
nakahiro@sarion.co.jp
URL
http://www.jin.gr.jp/~nahi/ (Japanese)

SOAP4R
Copyright © 2000, 2001 NAKAMURA, Hiroshi.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License(the file named `COPYING') for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.