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

Changeset 1698

Show
Ignore:
Timestamp:
08/06/06 23:30:04 (2 years ago)
Author:
nahi
Message:

generated classDef + capitalized element name caused the schema violation. soap4r must check a defined XSD::QName, not varname. fixes #229.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lib/soap/mapping/factory.rb

    r1696 r1698  
    5959      child = Mapping.get_attribute(obj, eledef.varname) 
    6060      if child.is_a?(XSD::NSDBase) 
    61         ele.add(eledef.varname, child) 
     61        ele.add(eledef.elename.name, child) 
    6262      else 
    6363        klass = Mapping.class_from_name(eledef.type) 
    6464        if klass && klass.ancestors.include?(::SOAP::SOAPBasetype) 
    65           ele.add(eledef.varname, klass.new(child)) 
     65          ele.add(eledef.elename.name, klass.new(child)) 
    6666        else 
    6767          # should check klass matches an actual object? 
    68           ele.add(eledef.varname, Mapping._obj2soap(child, map)) 
     68          ele.add(eledef.elename.name, Mapping._obj2soap(child, map)) 
    6969        end 
    7070      end 
  • trunk/lib/soap/rpc/router.rb

    r1670 r1698  
    472472      if @doc_response_qnames.size == 0 
    473473        result = [] 
    474       elsif @doc_response_qnames.size == 1 and !result.is_a?(Array) 
     474      elsif @doc_response_qnames.size == 1 
    475475        result = [result] 
    476476      end 
  • trunk/sample/wsdl/PayPalSvc/client.rb

    r1665 r1698  
    2323 
    2424endpoint_url = ARGV.shift 
    25 obj = PayPalAPIInterface.new(endpoint_url) 
     25obj = PayPalAPIAAInterface.new(endpoint_url) 
    2626obj.headerhandler << RequesterCredentialsHandler.new('NaHi', 'pass', 'authorizing_account_emailaddress') 
    27 obj.test_loopback_response << "" 
    28 obj.wiredump_dev = STDOUT 
     27obj.wiredump_dev = STDOUT if $DEBUG 
     28 
     29obj.test_loopback_response << File.read("response.xml") 
     30payerInfo = obj.getExpressCheckoutDetails(nil).getExpressCheckoutDetailsResponseDetails.payerInfo 
     31p payerInfo.payerName.firstName 
     32p payerInfo.payerBusiness 
     33exit 
    2934 
    3035getTransactionDetailsRequest = nil 
  • trunk/sample/wsdl/documentliteral/echo.wsdl

    r1680 r1698  
    99    <xsd:schema targetNamespace="urn:com.example:echo" 
    1010        elementFormDefault="qualified"> 
     11      <xsd:complexType name="TestType"> 
     12        <xsd:sequence> 
     13          <xsd:any minOccurs="0" maxOccurs="*" /> 
     14        </xsd:sequence> 
     15      </xsd:complexType> 
    1116      <xsd:element name="echoRequest"> 
    1217        <xsd:complexType> 
  • trunk/sample/wsdl/documentliteral/servant.rb

    r1611 r1698  
    44  def echo(parameters) 
    55    response = EchoResponse.new 
    6     response.sampleMultiValue << parameters.xmlattr_sampleAttr 
    7     response.sampleMultiValue << parameters.sampleElement 
     6    response << parameters.xmlattr_sampleAttr 
     7    response << parameters.sampleElement 
    88    response 
    99  end 
  • trunk/test/wsdl/ref/expectedProduct.rb

    r1689 r1698  
    2222    ["bag", ["Product[]", XSD::QName.new(nil, "bag")]], 
    2323    ["rating", ["SOAP::SOAPString[]", XSD::QName.new("urn:ref", "Rating")]], 
    24     ["comment_1", ["[]", XSD::QName.new(nil, "comment_1")]], 
     24    ["comment_1", ["[]", XSD::QName.new(nil, "Comment_1")]], 
    2525    ["comment_2", ["Comment[]", XSD::QName.new(nil, "comment-2")]], 
    2626    ["v___point", ["C__point", XSD::QName.new(nil, "__point")]] 
  • trunk/test/wsdl/ref/product.wsdl

    r1689 r1698  
    6464            <element name="bag" type="tns:Product" minOccurs="0" maxOccurs="unbounded"/> 
    6565            <element ref="tns:Rating" minOccurs="0" maxOccurs="unbounded"/> 
    66             <element name="comment_1" minOccurs="0" maxOccurs="unbounded"> 
     66            <element name="Comment_1" minOccurs="0" maxOccurs="unbounded"> 
    6767              <complexType> 
    6868                <simpleContent> 
  • trunk/test/wsdl/ref/test_ref.rb

    r1685 r1698  
    157157    r2 = e(q(Namespace, "Rating"), "+1") 
    158158    r3 = e(q(Namespace, "Rating"), "-1") 
    159     c11 = e("comment_1", "comment11") 
     159    c11 = e("Comment_1", "comment11") 
    160160    c11.extraattr["msgid"] = "msgid11" 
    161     c12 = e("comment_1", "comment12") 
     161    c12 = e("Comment_1", "comment12") 
    162162    c12.extraattr["msgid"] = "msgid12" 
    163163    c21 = e("comment-2", "comment21") 
     
    206206    r2 = Rating::C_1 
    207207    r3 = Rating::C_1_2 
    208     c11 = ::SOAP::SOAPElement.new("comment_1", "comment11") 
     208    c11 = ::SOAP::SOAPElement.new("Comment_1", "comment11") 
    209209    c11.extraattr["msgid"] = "msgid11" 
    210     c12 = ::SOAP::SOAPElement.new("comment_1", "comment12") 
     210    c12 = ::SOAP::SOAPElement.new("Comment_1", "comment12") 
    211211    c12.extraattr["msgid"] = "msgid12" 
    212212    c21 = Comment.new("comment21") 
     
    244244    r2 = Rating::C_1 
    245245    r3 = Rating::C_1_2 
    246     c11 = ::SOAP::SOAPElement.new("comment_1", "comment11") 
     246    c11 = ::SOAP::SOAPElement.new("Comment_1", "comment11") 
    247247    c11.extraattr["msgid"] = "msgid11" 
    248     c12 = ::SOAP::SOAPElement.new("comment_1", "comment12") 
     248    c12 = ::SOAP::SOAPElement.new("Comment_1", "comment12") 
    249249    c12.extraattr["msgid"] = "msgid12" 
    250250    c21 = Comment.new("comment21") 
  • trunk/test/wsdl/rpc/rpc.wsdl

    r1679 r1698  
    1212        <xsd:all> 
    1313          <xsd:element name="family-name" type="xsd:string" /> 
    14           <xsd:element name="given_name" type="xsd:string" /> 
     14          <xsd:element name="Given_name" type="xsd:string" /> 
    1515          <xsd:element name="age" type="xsd:int" /> 
    1616          <xsd:element name="gender" type="txd:gender" /> 
  • trunk/test/wsdl/rpc/test_rpc.rb

    r1679 r1698  
    1717    end 
    1818   
    19     DummyPerson = Struct.new("family-name".intern, :given_name) 
     19    DummyPerson = Struct.new("family-name".intern, :Given_name) 
    2020    def echo(arg1, arg2) 
    2121      case arg1.family_name 
     
    3232    end 
    3333   
    34     ErrPerson = Struct.new(:given_name, :no_such_element) 
     34    ErrPerson = Struct.new(:Given_name, :no_such_element) 
    3535    def echo_err(arg1, arg2) 
    3636      ErrPerson.new(58, Time.now)