Forum: Ruby soap complex type seen as nil

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
2ebf42f8625b86c0e91ae7bd4e2bef52?d=identicon&s=25 Raymond O'Connor (nappin)
on 2007-02-09 11:00
I can't figure out how to pass a complex type to a soap call.  I thought
all you had to do was pass it as a hash, so I could do something like
this:


result = driver.GetArticle('Request' => {'ArticleId' => '20061208',
'Email' => 'myemail@me.com', 'Password' => 'mypassword'})


Unfortunately I always get this error:

SOAP::Mapping::MappingError: nil not allowed: ArticleId


Here is the schema I am working with:

<xs:complexType name="GetArticleRequestType">
    <xs:sequence>
        <xs:element name="ArticleId" type="xs:string"/>
        <xs:element name="Email" type="xs:string"/>
        <xs:element name="Password" type="xs:string"/>
    </xs:sequence>
</xs:complexType>

<xs:element name="GetArticle" type="tns:GetArticleType"/>
<xs:complexType name="GetArticleType">
    <xs:sequence>
        <xs:element minOccurs="0" name="Validate" type="xs:string"/>
        <xs:element minOccurs="0" name="XMLEscaping" type="xs:string"/>
        <xs:element maxOccurs="unbounded" minOccurs="0"
            name="Request" type="tns:GetArticleRequestType"/>
        <xs:element minOccurs="0" name="Shared"
type="tns:GetArticleRequestType"/>
        <xs:element minOccurs="0" name="SubscriptionId"
type="xs:string"/>
    </xs:sequence>
</xs:complexType>

Any help would be greatly appreciated
4d5e28840f8628550a22c410cb73ad60?d=identicon&s=25 Mattias Bud (mattias)
on 2008-09-15 15:44
Did you solve this problem? I have something simular.
Bde8d8f24c1ca83f452b5a9d03d5ead6?d=identicon&s=25 Wouter de Bie (xinit)
on 2009-05-15 16:39
Any luck on this one?
This topic is locked and can not be replied to.