Welcome to the "trac"-ing site of soap4r!
[soap4r] [httpclient] [openpgp4u] [pkcs1] [logger] [csv] [vtr]

Changeset 1625

Show
Ignore:
Timestamp:
09/15/05 10:08:11 (3 years ago)
Author:
nahi
Message:

for 1.5.5

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/RELEASE_en.html

    r1560 r1625  
    1919 
    2020<p class="status"> 
    21 Last modified: May 22, 2005<br /> 
     21Last modified: Sep 15, 2005<br /> 
    2222Created: July 17, 2000 
    2323</p> 
     
    3434 
    3535<p> 
    36 Target SOAP4R version: SOAP4R/1.5.4 
     36Target SOAP4R version: SOAP4R/1.5.5 
    3737</p> 
    3838 
     
    5454 
    5555<p> 
    56 This is version 1.5.4. 
    57 Version 1.5.3 is the module which is included in ruby-1.8.2, 
    58 and not released independently. 
    59 Following changes consist from 2 parts; Changes from 1.5.3 to 1.5.4, 
    60 and from 1.5.2 to 1.5.3. 
    61 </p> 
    62  
    63 <p> 
    64 Changes in 1.5.4 from 1.5.3 
    65 </p> 
    66  
    67 <ul> 
    68   <li>SOAP client and server 
    69     <ul> 
    70       <li>for both client side and server side 
    71         <ul> 
    72           <li>improved document/literal service support.  style(rpc, document)/use(encoding, literal) combination are all supported.  for the detail about combination, see test/soap/test_style.rb.</li> 
    73           <li>let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to WSDL as well as obj2soap.</li> 
    74           <li>let SOAP::Mapping::Object handle XML attribute for doc/lit service.  you can set/get XML attribute via accessor methods which as a name 'xmlattr_' prefixed (&lt;foo name="bar"/&gt; -&gt; Foo#xmlattr_name).</li> 
    75         </ul> 
    76       </li> 
    77       <li>client side 
    78         <ul> 
    79           <li>WSDLDriver capitalized name operation bug fixed.  from 1.5.3-ruby1.8.2, operation which has capitalized name (such as KeywordSearchRequest in AWS) is defined as a method having uncapitalized name. (converted with GenSupport.safemethodname to handle operation name 'foo-bar').  it introduced serious incompatibility; in the past, it was defined as a capitalized.  define capitalized method as well under that circumstance.</li> 
    80           <li>added new factory interface 'WSDLDriverFactory#create_rpc_driver' to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver are merged).  'WSDLDriverFactory#create_driver' still creates WSDLDriver for compatibility but it warns that the method is deprecated.  please use create_rpc_driver instead of create_driver.</li> 
    81           <li>allow to use an URI object as an endpoint_url even with net/http, not http-access2.</li> 
    82         </ul> 
    83       </li> 
    84       <li>server side 
    85         <ul> 
    86           <li>added mod_ruby support to SOAP::CGIStub.  rename a CGI script server.cgi to server.rb and let mod_ruby's RubyHandler handles the script.  CGIStub detects if it's running under mod_ruby environment or not.</li> 
    87           <li>added fcgi support to SOAP::CGIStub.  see the sample at sample/soap/calc/server.fcgi.  (almost same as server.cgi but has fcgi handler at the bottom.)</li> 
    88           <li>allow to return a SOAPFault object to respond customized SOAP fault.</li> 
    89           <li>added the interface 'generate_explicit_type' for server side (CGIStub, HTTPServer).  call 'self.generate_explicit_type = true' if you want to return simplified XML even if it's rpc/encoded service.</li> 
    90         </ul> 
    91       </li> 
    92     </ul> 
    93   </li> 
    94  
    95   <li>WSDL 
    96     <ul> 
    97       <li>WSDL definition 
    98         <ul> 
    99           <li>improved XML Schema support such as extension, restriction, simpleType, complexType + simpleContent, ref, length, import, include.</li> 
    100           <li>reduced "unknown element/attribute" warnings (warn only 1 time for each QName).</li> 
    101           <li>importing XSD file at schemaLocation with xsd:import.</li> 
    102         </ul> 
    103       </li> 
    104       <li>code generation from WSDL 
    105         <ul> 
    106           <li>generator crashed when there's '-' in defined element/attribute name.</li> 
    107           <li>added ApacheMap WSDL definition.</li> 
    108         </ul> 
    109       </li> 
    110     </ul> 
    111   </li> 
    112  
    113   <li>Samples 
    114     <ul> 
    115       <li>added XML &lt;-&gt; Ruby mapping utility.  XSD::Mapping#xml2obj maps an XML to a tree of SOAP::Mapping::Object.  XSD::Mapping#obj2xml is for reverse direction conversion.  see a sample in sample/wsdl/noaa/client.rb</li> 
    116       <li>added a sample for weather.gov's NDFD services.</li> 
    117       <li>add a sample of googleAdWords.  CAUTION: I don't have an account of AdWords so the sample code is NOT tested.  Please tell me (nahi@ruby-lang.org) if you will get good/bad result in communicating with AdWords Server.</li> 
    118       <li>add a sample of AWSECommerce.  CAUTION: I don't have an account of AWSECommerce so the sample code is NOT tested.  Please tell me (nahi@ruby-lang.org) if you will get good/bad result in communicating with AWSECommerce Server.</li> 
    119     </ul> 
    120   </li> 
    121  
    122   <li>Redists 
    123     <ul> 
    124       <li>include xmlscan as a redistributed module.  xmlscan now is a first class XML processor.  still soap4r should run with REXML and XMLParser.</li> 
    125     </ul> 
    126   </li> 
    127 </ul> 
    128  
    129 <p> 
    130 Changes in 1.5.3 from 1.5.2 
    131 </p> 
    132  
    133 <ul> 
    134   <li>SOAP client and server 
    135     <ul> 
    136       <li>for both client side and server side 
    137         <ul> 
    138           <li>added a header handler class for simple SOAPHeader handling.  see samples in sample/soap/authheader/*.</li> 
    139           <li>SSL support (both client side and server side).  check sample/soap/ssl/*</li> 
    140           <li>gzipped content encoding support.  see sample/soap/helloworld/hw_{c,s}_gzip.rb.</li> 
    141         </ul> 
    142       </li> 
    143       <li>client side 
    144         <ul> 
    145           <li>HTTP-Cookies support under soap4r + http-access2.  not supported under soap4r + net/http.</li> 
    146           <li>added a method (SOAP::RPC::Driver#test_loopback_response) for loopback test with the specified response.</li> 
    147           <li>added SOAP::RPC::Driver#loadproperty interface to load property file.</li> 
    148           <li>let SOAP::RPC::Driver#add_method returns Method object.  you can invoke a service like; drv.add_method(&#34;hello&#34;).call(&#34;world&#34;)</li> 
    149           <li>added http options to get/set timeout seconds. 
    150             <ul> 
    151               <li>for http-access2: 
    152                 <ul> 
    153                   <li>driver.options[&#34;protocol.http.connect_timeout&#34;]</li> 
    154                   <li>driver.options[&#34;protocol.http.send_timeout&#34;]</li> 
    155                   <li>driver.options[&#34;protocol.http.receive_timeout&#34;]</li> 
    156                 </ul> 
    157               </li> 
    158               <li>for net/http: 
    159                 <ul> 
    160                   <li>driver.options[&#34;protocol.http.connect_timeout&#34;]</li> 
    161                   <li>driver.options[&#34;protocol.http.receive_timeout&#34;]</li> 
    162                 </ul> 
    163               </li> 
    164             </ul> 
    165           </li> 
    166           <li>raise NotImplementedError when net/http + basic_auth.</li> 
    167         </ul> 
    168       </li> 
    169       <li>server side 
    170         <ul> 
    171           <li>introduced the new server class SOAP::RPC::HTTPServer which takes WEBrick's HTTPServer compatible config parameter.</li> 
    172           <li>added a debug log of SOAP request/response.</li> 
    173         </ul> 
    174       </li> 
    175     </ul> 
    176   </li> 
    177  
    178   <li>SOAP core part 
    179     <ul> 
    180       <li>added XMLSchema derived type support; byte, nonPositiveInteger, negativeInteger, nonNegativeInteger, positiveInteger, unsignedLong, unsignedInt, unsignedShort, unsignedByte.</li> 
    181       <li>'eval' cleanup.  I hope it allows soap4r to work under mod_ruby environment.</li> 
    182       <li>SOAPProperty raise RuntimeError under ruby-1.9 when accessing locked property.  still raises TypeError under ruby-1.8 or earlier.  the change is from ruby's behaviour change about an exception when accessing a frozen object.</li> 
    183       <li>make SOAPHeader a child of SOAPStruct, not SOAPArray.</li> 
    184       <li>SOAPProperty does not eval whole string.  \\, \t, \r, \n, \f escaping chars are supported like Java's Properties.</li> 
    185       <li>URI object was not mapped correctly so that URI object was not interoperable under some situation.  fixed.</li> 
    186       <li>SOAP::Mapping::Object: handle multiple value as an array. 
    187 <pre> 
    188 &lt;foo&gt; 
    189   &lt;bar&gt;1&lt;/bar&gt; 
    190   &lt;bar&gt;2&lt;/bar&gt; 
    191   &lt;bar&gt;3&lt;/bar&gt; 
    192   &lt;baz&gt;4&lt;/baz&gt; 
    193 &lt;/foo&gt; 
    194   -&gt; 
    195 foo.bar =&gt; [1, 2, 3] 
    196 foo.baz =&gt; 4 
     56Here are changes in 1.5.5 from 1.5.4.  
     57</p> 
     58<ul><li>SOAP 
     59<ul><li>allow to configure an envelope namespace of SOAP request. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/124" title="configuable envelope namespace (closed)">#124</a>) 
     60<pre class="wiki">TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope' 
     61@client.options[&#34;soap.envelope.requestnamespace&#34;] = TemporaryNamespace 
     62@client.options[&#34;soap.envelope.responsenamespace&#34;] = TemporaryNamespace 
     63@client.do_proc(...) 
    19764</pre> 
    198       </li> 
    199       <li>raise an exception while dumping singleton class. [ruby-dev:22588] 
    200 <pre> 
    201 e.g. c = class &lt;&lt; Object.new 
    202        class C; self; end 
    203      end 
    204      SOAPMarshal.dump(c) 
     65</li><li>let SOAP request XML indent space configuable.  see "soap.envelope.no_indent" option. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/130" title="A server dislike indent spaces in XML instance (closed)">#130</a>) 
     66 
     67</li><li>let external CES configuable.  ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used by default. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/133" title="let $KCODE free (closed)">#133</a>) 
     68<pre class="wiki">external CES ::= CES used in Ruby object of client and server 
     69internal CES ::= CES used in SOAP/OM 
    20570</pre> 
    206       </li> 
    207     </ul> 
    208   </li> 
    209  
    210   <li>WSDL 
    211     <ul> 
    212       <li>WSDL definition 
    213         <ul> 
    214           <li>added &lt;xsd:simpleContent&gt; support.</li> 
    215           <li>initial (means &#34;far from complete&#34;) simpleType support.</li> 
    216           <li>support parts attribute of soap:body element.</li> 
    217           <li>xmlSchema's 'any' element support; for parsing, just treat the element as an element which has a name 'any'.</li> 
    218           <li>add mustUnderstand attribute support.</li> 
    219           <li>a special well-known type: ApacheMap support.</li> 
    220         </ul> 
    221       </li> 
    222  
    223       <li>code generation from WSDL 
    224         <ul> 
    225           <li>added simple code generation utils (lib/xsd/codegen)</li> 
    226           <li>dump attribute definition in XMLSchema as 'attr_*' attribute. [experimental]</li> 
    227           <li>wsdl2ruby.rb: add document/literal service support.  see sample/wsdl/documentliteral/*</li> 
    228           <li>untyped element should be treated as xsd:anyType.</li> 
    229           <li>added a tool xsd2ruby.rb for generating classdef from xsd file.</li> 
    230         </ul> 
    231       </li> 
    232     </ul> 
    233   </li> 
    234  
    235   <li>Samples 
    236     <ul> 
    237       <li>added RAA/2.4 sample client</li> 
    238       <li>added sample for Application/Request scope use.  Session scope (with Cookies) feature is not yet exists.</li> 
    239     </ul> 
    240   </li> 
    241 </ul> 
     71</li><li>add iso-8859-1 external CES support. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/106" title="iso-8859-1 encoded response (closed)">#106</a>) 
     72</li><li>fixed illegal 'qualified' handling of elements.  it caused ASP.NET inteoperability problem. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/144" title="soap4r and ASP.NET problems about 'qualified' (closed)">#144</a>) 
     73</li><li>added 'soap.envelope.use_numeric_character_reference' (boolean) option to let query XML use numeric character reference in XML, not plain UTF-8 character.  GoogleSearch server seems to not allow plain UTF-8 character since 2005-08-15 update. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/147" title="GoogleWebSearch does not work with UTF-8 query (closed)">#147</a>) 
     74</li><li>SOAP::Header::SimpleHeader (de)serialization throws an exception on SimpleHeader.on_(in|out)bound when header is a String.  so we could not use a simple single element headerItem.  fixed.  thanks to emil. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/129" title="SOAP::Header::SimpleHeader deserialization throws on ... (closed)">#129</a>) 
     75 
     76</li><li>out parameter of rpc operation did not work.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/132" title="outparameter causes NameError (closed)">#132</a>) 
     77</li><li>follow HTTP redirect only if using http-access2.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/125" title="follow http/https redirection (closed)">#125</a>) (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/145" title="an error from streamHandler.rb:37 that claims an uninitialized constant ... (closed)">#145</a>) 
     78</li><li>add a workaround for importing an WSDL whose path begins with drive letter.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/115" title="RuntimeError: Cannot connect to ... (closed)">#115</a>) 
     79</li></ul></li><li>WSDL 
     80<ul><li>SOAP Data which is defined as a simpletype was not mapped correctly to Ruby obj when using wsdl2ruby.rb generated classdef file. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/123" title="soap4r mapping problem when using google adwords api (closed)">#123</a>) 
     81</li><li>rpc/literal support. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/118" title="soap encoding is used for rpc/literal services (closed)">#118</a>) 
     82 
     83</li><li>re-implemented local element qualify/unqualify control.  handles elementFormDefault and form in WSDL.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/119" title="Cannot talk to doc/literal service which is has ... (closed)">#119</a>) 
     84</li><li>Array of an element which has simpleType causes a crash. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/128" title="Array of a element which has simpleType causes a crash (closed)">#128</a>) 
     85</li><li>prarmeterOrder may not contain return part so it can be shorter than parts size.  Thanks to Hugh.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/139" title="prarmeterOrder may not contain return part (closed)">#139</a>) 
     86</li></ul></li><li>Samples 
     87<ul><li>added BasicAuth client sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/117" title="add BasicAuth sample not only in test dir but also in sample dir (closed)">#117</a>) 
     88</li><li>added Base64 client/server sample. 
     89</li><li>added Flickr SOAP interface client sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/122" title="Flickr SOAP API support (closed)">#122</a>) 
     90 
     91</li><li>added SalesForce client sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/135" title="how to set session id in SOAP header (sforce WSDL) (closed)">#135</a>) 
     92</li><li>updated Thawte CA certificate for GoogleAdWords sample. 
     93</li><li>updated a client script with the newer version made by Johan.  thanks! 
     94</li><li>shortened long file names. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/120" title="long file name (closed)">#120</a>) 
     95</li><li>fixed typo in authheader sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/129" title="SOAP::Header::SimpleHeader deserialization throws on ... (closed)">#129</a>) 
     96</li><li>updated deprecated method usage.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/138" title="create_driver in sample should be replaced with create_rpc_driver (closed)">#138</a>) 
     97</li></ul></li></ul> 
    24298 
    24399<p> 
     
    696552 
    697553<dl> 
     554<dt>1.5.5 - Sep 15, 2005</dt> 
     555<dd> Here are changes in 1.5.5 from 1.5.4.  
     556<ul><li>SOAP 
     557<ul><li>allow to configure an envelope namespace of SOAP request. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/124" title="configuable envelope namespace (closed)">#124</a>) 
     558<pre class="wiki">TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope' 
     559@client.options[&#34;soap.envelope.requestnamespace&#34;] = TemporaryNamespace 
     560@client.options[&#34;soap.envelope.responsenamespace&#34;] = TemporaryNamespace 
     561@client.do_proc(...) 
     562</pre> 
     563</li><li>let SOAP request XML indent space configuable.  see "soap.envelope.no_indent" option. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/130" title="A server dislike indent spaces in XML instance (closed)">#130</a>) 
     564 
     565</li><li>let external CES configuable.  ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used by default. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/133" title="let $KCODE free (closed)">#133</a>) 
     566<pre class="wiki">external CES ::= CES used in Ruby object of client and server 
     567internal CES ::= CES used in SOAP/OM 
     568</pre> 
     569</li><li>add iso-8859-1 external CES support. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/106" title="iso-8859-1 encoded response (closed)">#106</a>) 
     570</li><li>fixed illegal 'qualified' handling of elements.  it caused ASP.NET inteoperability problem. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/144" title="soap4r and ASP.NET problems about 'qualified' (closed)">#144</a>) 
     571</li><li>added 'soap.envelope.use_numeric_character_reference' (boolean) option to let query XML use numeric character reference in XML, not plain UTF-8 character.  GoogleSearch server seems to not allow plain UTF-8 character since 2005-08-15 update. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/147" title="GoogleWebSearch does not work with UTF-8 query (closed)">#147</a>) 
     572</li><li>SOAP::Header::SimpleHeader (de)serialization throws an exception on SimpleHeader.on_(in|out)bound when header is a String.  so we could not use a simple single element headerItem.  fixed.  thanks to emil. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/129" title="SOAP::Header::SimpleHeader deserialization throws on ... (closed)">#129</a>) 
     573 
     574</li><li>out parameter of rpc operation did not work.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/132" title="outparameter causes NameError (closed)">#132</a>) 
     575</li><li>follow HTTP redirect only if using http-access2.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/125" title="follow http/https redirection (closed)">#125</a>) (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/145" title="an error from streamHandler.rb:37 that claims an uninitialized constant ... (closed)">#145</a>) 
     576</li><li>add a workaround for importing an WSDL whose path begins with drive letter.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/115" title="RuntimeError: Cannot connect to ... (closed)">#115</a>) 
     577</li></ul></li><li>WSDL 
     578<ul><li>SOAP Data which is defined as a simpletype was not mapped correctly to Ruby obj when using wsdl2ruby.rb generated classdef file. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/123" title="soap4r mapping problem when using google adwords api (closed)">#123</a>) 
     579</li><li>rpc/literal support. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/118" title="soap encoding is used for rpc/literal services (closed)">#118</a>) 
     580 
     581</li><li>re-implemented local element qualify/unqualify control.  handles elementFormDefault and form in WSDL.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/119" title="Cannot talk to doc/literal service which is has ... (closed)">#119</a>) 
     582</li><li>Array of an element which has simpleType causes a crash. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/128" title="Array of a element which has simpleType causes a crash (closed)">#128</a>) 
     583</li><li>prarmeterOrder may not contain return part so it can be shorter than parts size.  Thanks to Hugh.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/139" title="prarmeterOrder may not contain return part (closed)">#139</a>) 
     584</li></ul></li><li>Samples 
     585<ul><li>added BasicAuth client sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/117" title="add BasicAuth sample not only in test dir but also in sample dir (closed)">#117</a>) 
     586</li><li>added Base64 client/server sample. 
     587</li><li>added Flickr SOAP interface client sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/122" title="Flickr SOAP API support (closed)">#122</a>) 
     588 
     589</li><li>added SalesForce client sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/135" title="how to set session id in SOAP header (sforce WSDL) (closed)">#135</a>) 
     590</li><li>updated Thawte CA certificate for GoogleAdWords sample. 
     591</li><li>updated a client script with the newer version made by Johan.  thanks! 
     592</li><li>shortened long file names. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/120" title="long file name (closed)">#120</a>) 
     593</li><li>fixed typo in authheader sample. (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/129" title="SOAP::Header::SimpleHeader deserialization throws on ... (closed)">#129</a>) 
     594</li><li>updated deprecated method usage.  (<a class="closed ticket" href="http://dev.ctor.org/soap4r/ticket/138" title="create_driver in sample should be replaced with create_rpc_driver (closed)">#138</a>) 
     595</li></ul></li></ul> 
     596</dd> 
     597 
    698598<dt>1.5.4 - May 13, 2005</dt> 
    699599<dd>This is version 1.5.4.