I''m using a soap based web service (Backend in Java XFire web service). I can connect fine and even execute the web service. The issue is that I have 3 fields that are string arrays. I am passing in data correctly I believe. But the outgoing soap message is not showing the array data. Has anybody run into something like this? Thanks!!! I''ll paste the basics of the code below: url = "<VALID URL HERE>" urn = "urn:<VALID SERVICE HERE>" soap = SOAP::RPC::Driver.new(url, urn) # I''ve tried adding it specifically and letting # the following create it: # soap = SOAP::WSDLDriverFactory.new(wsdl_url).create_rpc_driver # Neither worked. soap.add_method(''serviceName'', ''in0'', ''in1'', ''in2'', ''in3'', ''in4'', ''in5'', ''in6'', ''in7'') # This will dump out the messages being sent and received. soap.wiredump_file_base = "soapresult" #This creates an array of Strings from the NODE parameters #of my categories. categories = getSelectedCategories(@params["NODE"]) # Prints array entries for debugging purposes. i = 0 categories.each do |d| db("Category = [#{categories[i]}]") i += 1 end # Setting up the valid fields for the query. categoryOptions = [] appId = "servicetest" domains = nil locale = "<VALID LOCALE>" markuptype = "<VALID TYPE - String >" markupoptions = nil #This is also an array of strings # One of many permutations of the calls I''ve tried. # I can get a response from the # service. But I can''t get the String Array part of the # SOAP document filled out correctly. @results = soap.serviceName([:in0 => doc], [:in1 => categories], [:in2 => categoryOptions], [:in3 => appId], [:in4 => domains], [:in5 => locale], [:in6 => markuptype], [:in7 => markupoptions]) _____________________________________________________________________ Sent values in the SOAP body: <env:Body> <n1:serviceName xmlns:n1="http://<VALID URL HERE>"> <n1:in0>madonna</n1:in0> <n1:in1> <n1:string></n1:string> # The in1 field is the array...empty </n1:in1> <n1:in2> <n1:string></n1:string> </n1:in2> <n1:in3>servicetest</n1:in3> <n1:in4> <n1:string></n1:string> </n1:in4> <n1:in5>en_us</n1:in5> <n1:in6>InlineHrefMarkup</n1:in6> <n1:in7> <n1:string></n1:string> </n1:in7> </n1:getMarkupDoc> </env:Body> -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk -~----------~----~----~----~------~----~------~--~---
Looking for some help from a big brain out there....Bueller? Bueller? Bueller? -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Repost because I can''t find the original... I''m using a soap based web service (Backend in Java XFire web service). I can connect fine and even execute the web service. The issue is that I have 3 fields that are string arrays. I am passing in data correctly I believe. But the outgoing soap message is not showing the array data. Has anybody run into something like this? I''ll paste the basics of the code below: url = "<VALID URL HERE>" urn = "urn:<VALID SERVICE HERE>" soap = SOAP::RPC::Driver.new(url, urn) # I''ve tried addign it specifically and letting the following create it: # soap SOAP::WSDLDriverFactory.new(wsdl_url).create_rpc_driver # Neither worked. soap.add_method(''serviceName'', ''in0'', ''in1'', ''in2'', ''in3'', ''in4'', ''in5'', ''in6'', ''in7'') # This will dump out the messages being sent and received. soap.wiredump_file_base = "soapresult" #This creates an array of Strings from the NODE parameters of my categories. categories = getSelectedCategories(@params["NODE"]) # Prints array entries so I know there is actual data there. i = 0 categories.each do |d| db("Category = [#{categories[i]}]") i += 1 end # Setting up the valid fields for the query. categoryOptions = [] appId = "servicetest" domains = nil locale = "<VALID LOCALE>" markuptype = "<VALID TYPE - String >" markupoptions = nil #This is also an array of strings...but isn''t needed yet. # One of many permutations of the calls I''ve tried. I can get a response from the # service. But I can''t get the String Array part of the SOAP document filled # out correctly. @results = soap.serviceName([:in0 => doc], [:in1 => categories], [:in2 => categoryOptions], [:in3 => appId], [:in4 => domains], [:in5 => locale], [:in6 => markuptype], [:in7 => markupoptions]) _____________________________________________________________________ Sent values in the SOAP body: <env:Body> <n1:serviceName xmlns:n1="http://<VALID URL HERE>"> <n1:in0>madonna</n1:in0> <n1:in1> <n1:string></n1:string> # The in1 field is the array...and dosn''t get the 3 strings in it!!! </n1:in1> <n1:in2> <n1:string></n1:string> </n1:in2> <n1:in3>servicetest</n1:in3> <n1:in4> <n1:string></n1:string> </n1:in4> <n1:in5>en_us</n1:in5> <n1:in6>InlineHrefMarkup</n1:in6> <n1:in7> <n1:string></n1:string> </n1:in7> </n1:getMarkupDoc> </env:Body> ____________________________________________________________________________ Sanitized WSDL below: <?xml version="1.0" encoding="UTF-8" ?> - <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope" xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding" xmlns:tns="http://servername.iwebsys.aol.com:3000/servicename/services/servicename" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://servername.iwebsys.aol.com:3000/servicename/services/servicename"> - <wsdl:types> - <xsd:schema targetNamespace="http://servername.iwebsys.aol.com:3000/servicename/services/servicename" elementFormDefault="qualified" attributeFormDefault="qualified"> - <xsd:complexType name="ArrayOfString"> - <xsd:sequence> <xsd:element name="string" type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded" /> </xsd:sequence> </xsd:complexType> - <xsd:element name="getKeywordList"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="in0" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in1" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in2" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in3" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in4" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in5" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getKeywordListResponse"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="out" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getKeywordList1"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="in0" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in1" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in2" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in3" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in4" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in5" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getKeywordList1Response"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="out" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getMarkupDoc1"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="in0" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in1" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in2" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in3" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in4" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in5" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in6" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in7" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getMarkupDoc1Response"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="out" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getMarkupDoc"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="in0" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in1" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in2" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in3" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in4" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in5" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in6" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> <xsd:element name="in7" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getMarkupDocResponse"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="out" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getCategories"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="in0" type="xsd:string" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> - <xsd:element name="getCategoriesResponse"> - <xsd:complexType> - <xsd:sequence> <xsd:element name="out" type="tns:ArrayOfString" nillable="true" minOccurs="1" maxOccurs="1" /> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> </wsdl:types> - <wsdl:message name="getKeywordListRequest"> <wsdl:part element="tns:getKeywordList" name="parameters" /> </wsdl:message> - <wsdl:message name="getMarkupDocRequest"> <wsdl:part element="tns:getMarkupDoc" name="parameters" /> </wsdl:message> - <wsdl:message name="getMarkupDoc1Request"> <wsdl:part element="tns:getMarkupDoc1" name="parameters" /> </wsdl:message> - <wsdl:message name="getMarkupDocResponse"> <wsdl:part element="tns:getMarkupDocResponse" name="parameters" /> </wsdl:message> - <wsdl:message name="getMarkupDoc1Response"> <wsdl:part element="tns:getMarkupDoc1Response" name="parameters" /> </wsdl:message> - <wsdl:message name="getKeywordListResponse"> <wsdl:part element="tns:getKeywordListResponse" name="parameters" /> </wsdl:message> - <wsdl:message name="getCategoriesRequest"> <wsdl:part element="tns:getCategories" name="parameters" /> </wsdl:message> - <wsdl:message name="getCategoriesResponse"> <wsdl:part element="tns:getCategoriesResponse" name="parameters" /> </wsdl:message> - <wsdl:message name="getKeywordList1Request"> <wsdl:part element="tns:getKeywordList1" name="parameters" /> </wsdl:message> - <wsdl:message name="getKeywordList1Response"> <wsdl:part element="tns:getKeywordList1Response" name="parameters" /> </wsdl:message> - <wsdl:portType name="servicenameServicePortType"> - <wsdl:operation name="getKeywordList"> <wsdl:input message="tns:getKeywordListRequest" name="getKeywordListRequest" /> <wsdl:output message="tns:getKeywordListResponse" name="getKeywordListResponse" /> </wsdl:operation> - <wsdl:operation name="getKeywordList1"> <wsdl:input message="tns:getKeywordList1Request" name="getKeywordList1Request" /> <wsdl:output message="tns:getKeywordList1Response" name="getKeywordList1Response" /> </wsdl:operation> - <wsdl:operation name="getMarkupDoc1"> <wsdl:input message="tns:getMarkupDoc1Request" name="getMarkupDoc1Request" /> <wsdl:output message="tns:getMarkupDoc1Response" name="getMarkupDoc1Response" /> </wsdl:operation> - <wsdl:operation name="getMarkupDoc"> <wsdl:input message="tns:getMarkupDocRequest" name="getMarkupDocRequest" /> <wsdl:output message="tns:getMarkupDocResponse" name="getMarkupDocResponse" /> </wsdl:operation> - <wsdl:operation name="getCategories"> <wsdl:input message="tns:getCategoriesRequest" name="getCategoriesRequest" /> <wsdl:output message="tns:getCategoriesResponse" name="getCategoriesResponse" /> </wsdl:operation> </wsdl:portType> - <wsdl:binding name="servicenameServiceHttpBinding" type="tns:servicenameServicePortType"> <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> - <wsdl:operation name="getKeywordList"> <wsdlsoap:operation soapAction="" /> - <wsdl:input name="getKeywordListRequest"> <wsdlsoap:body use="literal" /> </wsdl:input> - <wsdl:output name="getKeywordListResponse"> <wsdlsoap:body use="literal" /> </wsdl:output> </wsdl:operation> - <wsdl:operation name="getKeywordList1"> <wsdlsoap:operation soapAction="" /> - <wsdl:input name="getKeywordList1Request"> <wsdlsoap:body use="literal" /> </wsdl:input> - <wsdl:output name="getKeywordList1Response"> <wsdlsoap:body use="literal" /> </wsdl:output> </wsdl:operation> - <wsdl:operation name="getMarkupDoc1"> <wsdlsoap:operation soapAction="" /> - <wsdl:input name="getMarkupDoc1Request"> <wsdlsoap:body use="literal" /> </wsdl:input> - <wsdl:output name="getMarkupDoc1Response"> <wsdlsoap:body use="literal" /> </wsdl:output> </wsdl:operation> - <wsdl:operation name="getMarkupDoc"> <wsdlsoap:operation soapAction="" /> - <wsdl:input name="getMarkupDocRequest"> <wsdlsoap:body use="literal" /> </wsdl:input> - <wsdl:output name="getMarkupDocResponse"> <wsdlsoap:body use="literal" /> </wsdl:output> </wsdl:operation> - <wsdl:operation name="getCategories"> <wsdlsoap:operation soapAction="" /> - <wsdl:input name="getCategoriesRequest"> <wsdlsoap:body use="literal" /> </wsdl:input> - <wsdl:output name="getCategoriesResponse"> <wsdlsoap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> - <wsdl:service name="servicenameService"> - <wsdl:port binding="tns:servicenameServiceHttpBinding" name="servicenameServiceHttpPort"> <wsdlsoap:address location="http://servername.iwebsys.aol.com:3000/servicename/services/servicenameService" /> </wsdl:port> </wsdl:service> </wsdl:definitions> -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Oh yeah....don''t blame me for the WSDL. It''s a java XFire generated one. Thanks for any help! MudDawg -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Anybody? -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
TTT -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Bueller??? -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---