| 56 | | Thousands of lines are changed in this release |
|---|
| 57 | | (*.rb in current SOAP4R distribution has 30kloc or over). |
|---|
| 58 | | But the biggest change is coding convention, camelCase to non_camel_case. |
|---|
| 59 | | Though I tried to keep compatibility between 1.5.0 and 1.4.8, but there's no |
|---|
| 60 | | way to keep it at a few point. If you'll find your code which was developed |
|---|
| 61 | | for 1.4.8 does not run under 1.5.0, feel free to ask |
|---|
| 62 | | <a href="mailto:nakahiro@sarion.co.jp">me</a> to solve the problem. |
|---|
| 63 | | </p> |
|---|
| 64 | | <ul> |
|---|
| 65 | | <li>Dependency libraries; |
|---|
| 66 | | <ul> |
|---|
| 67 | | <li>Add net/http support. Users can try sample SOAP clients without installing http-access2. For actual usage, consider installing http-access2 for speed and thread-safe SOAP client. CAUTION: Building SOAP CGI server needs http-access2 to be installed.</li> |
|---|
| 68 | | <li>Soap4r standalone server requires webrick module to be installed instead of GServer.rb and httpserver.rb.</li> |
|---|
| 69 | | <li>Supports iconv. To use utf-8, you need to install iconv(included in ruby/1.8) or uconv.</li> |
|---|
| 70 | | <li>Suspend NQXML XML parser support.</li> |
|---|
| 71 | | <li>Remove REXML processor version check. No longer needed.</li> |
|---|
| 72 | | <li>Rewrite tests with test/unit.</li> |
|---|
| | 56 | Important news: Soap4r library is included in ruby distribution after |
|---|
| | 57 | ruby/1.8.1. You might not be need to install this package under ruby/1.8. |
|---|
| | 58 | The files this package includes and are not included in ruby/1.8 distribution |
|---|
| | 59 | are an application program (bin/wsdl2ruby) and some test codes. |
|---|
| | 60 | Consider to get this package if, |
|---|
| | 61 | </p> |
|---|
| | 62 | |
|---|
| | 63 | <ul> |
|---|
| | 64 | <li>You need the WSDL to ruby (reads a WSDL file and generates stubs and Ruby class definitions) application, or</li> |
|---|
| | 65 | <li>You want to use soap4r under ruby/1.6.</li> |
|---|
| | 66 | </ul> |
|---|
| | 67 | |
|---|
| | 68 | <ul> |
|---|
| | 69 | <li>Features; |
|---|
| | 70 | <ul> |
|---|
| | 71 | <li>Sample updates; Update Amazon Web Service WSDL (v2 -> v3), and update RAA WSDL(0.0.1 -> 0.0.2). |
|---|
| | 72 | <li>Supports ivars of basetype and extending modules marshalling with XML attribute. |
|---|
| | 73 | Using XML attribute to support ruby object dependent information, marshalled object keeps compatibility with SOAP spec. |
|---|
| | 74 | It shows the power of XML, extensibility.<br/> |
|---|
| | 75 | Now I think SOAP marshaller supports all kind of object graph which is supported by Ruby's original marshaller.</li> |
|---|
| | 76 | <li>Better XML pretty printing. |
|---|
| | 77 | <pre> |
|---|
| | 78 | puts SOAPMarshal.dump(Person.new("NaHi", 33)) |
|---|
| | 79 | |
|---|
| | 80 | => |
|---|
| | 81 | |
|---|
| | 82 | <?xml version="1.0" encoding="utf-8" ?> |
|---|
| | 83 | <env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
|---|
| | 84 | xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" |
|---|
| | 85 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> |
|---|
| | 86 | <env:Body> |
|---|
| | 87 | <Person xmlns:n1="http://www.ruby-lang.org/xmlns/ruby/type/custom" |
|---|
| | 88 | xsi:type="n1:Person" |
|---|
| | 89 | env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> |
|---|
| | 90 | <age xsi:type="xsd:int">33</age> |
|---|
| | 91 | <name xsi:type="xsd:string">NaHi</name> |
|---|
| | 92 | </Person> |
|---|
| | 93 | </env:Body> |
|---|
| | 94 | </env:Envelope> |
|---|
| | 95 | </pre></li> |
|---|
| 75 | | <li>Features; |
|---|
| 76 | | <ul> |
|---|
| 77 | | <li>Efforts to support messaging with document/literal and ASP.NET interoperability.</li> |
|---|
| 78 | | <li>Add document/literal messaging interface to wsdlDriver.rb. See a very brief example in sample/soapbox/wsdlDriver.rb though I still didn't try to login to Jabber server.. Jabber folks?</li> |
|---|
| 79 | | <li>XML pretty printing.</li> |
|---|
| 80 | | <li>Better Ruby object mapping. Rewrote RubytypeFactory to support more Ruby objects. Tests in AMarshal(http://cvs.m17n.org/~akr/amarshal/) much helped it. Thanks very much to Tanaka Akira-san.</li> |
|---|
| 81 | | <li>SOAPMarshal accepts IO as an output device like Marshal#dump.</li> |
|---|
| 82 | | <li>SOAPElement: constructor signature change. Added extraattrs attribute.</li> |
|---|
| 83 | | <li>XSDDateTimeImpl: to_time did not set usec.</li> |
|---|
| 84 | | <li>StreamHandler: add reset method to shutdown a connection to a site.</li> |
|---|
| | 98 | <li>Installation; |
|---|
| | 99 | <ul> |
|---|
| | 100 | <li>The previous version soap4r/1.5.0 required http-access2 to be installed to build CGI server, but no longer needed fot this purpose now. |
|---|
| | 101 | You can use almost all features of soap4r without http-access2, |
|---|
| | 102 | but for actual usage, consider installing http-access2 for speed and |
|---|
| | 103 | thread-safe SOAP client.</li> |
|---|
| | 104 | <li>Under ruby/1.8, installer installs lib files to rubylibdir(e.g. /usr/local/lib/ruby/1.8) instead of sitelibdir(e.g. /usr/local/lib/ruby/site_ruby/1.8)</li> |
|---|
| 87 | | <li>Others; |
|---|
| 88 | | <ul> |
|---|
| 89 | | <li>Simplify installer and remove uninstaller. Saving inventory file in src dir could be the problem.</li> |
|---|
| 90 | | <li>Class/Module architecture relocation.</li> |
|---|
| 91 | | <li>Changing coding convention to fit with Ruby's. Added lib/soap/compat.rb which defines compatibility definitions for 1.4.8. lib/soap/compat.rb warns when the library is loaded.</li> |
|---|
| 92 | | <li>Many warnings raised under 1.8, caused by illegal references like XSD::XSDInt in typeMap.rb. Soap4r defined toplevel::XSDInt. Define XSD* classes in XSD module and introduce it to toplevel.</li> |
|---|
| | 107 | <li>Bug fixes; |
|---|
| | 108 | <ul> |
|---|
| | 109 | <li>Do not introduce XSD constants to toplevel.</li> |
|---|
| | 110 | <li>'NO_PROXY'/'no_proxy' env var was not supported under net/http. Fixed.</li> |
|---|
| | 111 | <li>Remove some ruby/1.8 dependent codes. Should work fine under 1.6, too.</li> |
|---|
| | 112 | <li>XSD::XSDString did not check its value space under $KCODE = 'NONE' env for example where iconv module is not installed.</li> |
|---|
| | 113 | <li>XSD::XSDFloat, XSD::XSDDouble: add +/- sign explicitly when stringified and embedded into XML instance. Ruby's sprintf may format -0.0 as "0.0" (no minus sign) depending on underlying C sprintf implementation.</li> |
|---|
| 429 | | <dt class="path">webrick/</dt> |
|---|
| 430 | | <dd>SOAP-RPC server samples which runs with WEBrick. |
|---|
| 431 | | <ul> |
|---|
| 432 | | <li>httpd.rb: HTTP server which soaplet.rb mounts to. |
|---|
| 433 | | It is powered by WEBrick so you must install |
|---|
| 434 | | <a href="http://raa.ruby-lang.org/list.rhtml?name=webrick">[RAA:WEBrick]</a> |
|---|
| 435 | | to run it.</li> |
|---|
| 436 | | <li>soaplet.rb: A bricklet to add a SOAP function to WEBrick. |
|---|
| 437 | | It hosts exchange.rb, sampleStruct.rb below, and it is mounted to httpd.rb |
|---|
| 438 | | to serve ExchangeService and SampleStructService.</li> |
|---|
| 439 | | <li>ExchangeService |
|---|
| 440 | | <dl> |
|---|
| 441 | | <dt>exchange.rb</dt> |
|---|
| 442 | | <dd>A server class definition which returns the currency rate |
|---|
| 443 | | after connecting to another site by SOAP to get the real rate. |
|---|
| 444 | | An instance of this class is instanciated in httpd.rb and this instance |
|---|
| 445 | | respond to each HTTP request.</dd> |
|---|
| 446 | | <dt>exchangeClient.rb</dt> |
|---|
| 447 | | <dd>A client to connect soaplet.rb via SOAP/HTTP to call exchange.rb.</dd> |
|---|
| 448 | | <dt>iExchange.rb</dt> |
|---|
| 449 | | <dd>Common class(type) definitions for server and client.</dd> |
|---|
| 450 | | </dl> |
|---|
| 451 | | </li> |
|---|
| 452 | | |
|---|
| 556 | | <dt>1.5.0 - January 17, 2003</dt> |
|---|
| | 549 | <dt>1.5.1 - November 2, 2003</dt> |
|---|
| | 550 | <dd>Important news: Soap4r library is included in ruby distribution after |
|---|
| | 551 | ruby/1.8.1. You might not be need to install this package under ruby/1.8. |
|---|
| | 552 | The files this package includes and are not included in ruby/1.8 distribution |
|---|
| | 553 | are an application program (bin/wsdl2ruby) and some test codes. |
|---|
| | 554 | Consider to get this package if, |
|---|
| | 555 | <ul> |
|---|
| | 556 | <li>You need the WSDL to ruby (reads a WSDL file and generates stubs and Ruby class definitions) application, or</li> |
|---|
| | 557 | <li>You want to use soap4r under ruby/1.6.</li> |
|---|
| | 558 | </ul> |
|---|
| | 559 | |
|---|
| | 560 | <ul> |
|---|
| | 561 | <li>Features; |
|---|
| | 562 | <ul> |
|---|
| | 563 | <li>Sample updates; Update Amazon Web Service WSDL (v2 -> v3), and update RAA WSDL(0.0.1 -> 0.0.2). |
|---|
| | 564 | <li>Supports ivars of basetype and extending modules marshalling with XML attribute. |
|---|
| | 565 | Using XML attribute to support ruby object dependent information, marshalled object keeps compatibility with SOAP spec. |
|---|
| | 566 | It shows the power of XML, extensibility.<br/> |
|---|
| | 567 | Now I think SOAP marshaller supports all kind of object graph which is supported by Ruby's original marshaller.</li> |
|---|
| | 568 | <li>Better XML pretty printing. |
|---|
| | 569 | <pre> |
|---|
| | 570 | puts SOAPMarshal.dump(Person.new("NaHi", 33)) |
|---|
| | 571 | |
|---|
| | 572 | => |
|---|
| | 573 | |
|---|
| | 574 | <?xml version="1.0" encoding="utf-8" ?> |
|---|
| | 575 | <env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
|---|
| | 576 | xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" |
|---|
| | 577 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> |
|---|
| | 578 | <env:Body> |
|---|
| | 579 | <Person xmlns:n1="http://www.ruby-lang.org/xmlns/ruby/type/custom" |
|---|
| | 580 | xsi:type="n1:Person" |
|---|
| | 581 | env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> |
|---|
| | 582 | <age xsi:type="xsd:int">33</age> |
|---|
| | 583 | <name xsi:type="xsd:string">NaHi</name> |
|---|
| | 584 | </Person> |
|---|
| | 585 | </env:Body> |
|---|
| | 586 | </env:Envelope> |
|---|
| | 587 | </pre></li> |
|---|
| | 588 | </ul></li> |
|---|
| | 589 | |
|---|
| | 590 | <li>Installation; |
|---|
| | 591 | <ul> |
|---|
| | 592 | <li>The previous version soap4r/1.5.0 required http-access2 to be installed to build CGI server, but no longer needed fot this purpose now. |
|---|
| | 593 | You can use almost all features of soap4r without http-access2, |
|---|
| | 594 | but for actual usage, consider installing http-access2 for speed and |
|---|
| | 595 | thread-safe SOAP client.</li> |
|---|
| | 596 | <li>Under ruby/1.8, installer installs lib files to rubylibdir(e.g. /usr/local/lib/ruby/1.8) instead of sitelibdir(e.g. /usr/local/lib/ruby/site_ruby/1.8)</li> |
|---|
| | 597 | </ul></li> |
|---|
| | 598 | |
|---|
| | 599 | <li>Bug fixes; |
|---|
| | 600 | <ul> |
|---|
| | 601 | <li>Do not introduce XSD constants to toplevel.</li> |
|---|
| | 602 | <li>'NO_PROXY'/'no_proxy' env var was not supported under net/http. Fixed.</li> |
|---|
| | 603 | <li>Remove some ruby/1.8 dependent codes. Should work fine under 1.6, too.</li> |
|---|
| | 604 | <li>XSD::XSDString did not check its value space under $KCODE = 'NONE' env for example where iconv module is not installed.</li> |
|---|
| | 605 | <li>XSD::XSDFloat, XSD::XSDDouble: add +/- sign explicitly when stringified and embedded into XML instance. Ruby's sprintf may format -0.0 as "0.0" (no minus sign) depending on underlying C sprintf implementation.</li> |
|---|
| | 606 | </ul></li> |
|---|
| | 607 | </ul></dd> |
|---|
| | 608 | |
|---|
| | 609 | <dt>1.5.0 - September 13, 2003</dt> |
|---|