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

Ticket #233 (closed enhancement: fixed)

Opened 2 years ago

Last modified 2 years ago

Method overloading and generated drivers

Reported by: nahi Assigned to: nahi
Priority: normal Milestone: 1.5.6
Component: soap4r Version: 1.5
Keywords: Cc:

Description

from soap4r-ML

I tried to generate a driver and service for a WSDL file that uses "method" overloading, but ran into some problems which *look* like they might be problems in wsdl2ruby routines.

The original WSDL was at http://confluence.atlassian.com/rpc/soap-axis/confluenceservice-v1?wsdl (method renderContent has two different forms with different numbers of args).

I've simplified it down to http://www.codehaus.org/~bwalding/test2.wsdl which has two different methodAlpha requests.

Now my WSDL skills are shaky, but the SOAPUI tool that I tried thinks the WSDL is valid and the methods look right in it (as an aside, xmethods doesn't seem to like the overloading either using the same signatures for both methods).

The ruby (partial paste only) generated in the driver :

Methods = [
    [ XSD::QName.new("http://soap.rpc.confluence.atlassian.com", "methodAlpha"),
      "",
      "methodAlpha",
      [ ["in", "in0", ["::SOAP::SOAPString"]],
        ["in", "in1", ["::SOAP::SOAPString"]],
        ["in", "in2", ["::SOAP::SOAPString"]],
        ["retval", "methodAlphaReturn", ["::SOAP::SOAPLong"]] ],
      { :request_style =>  :rpc, :request_use =>  :encoded,
        :response_style => :rpc, :response_use => :encoded }
    ],
    [ XSD::QName.new("http://soap.rpc.confluence.atlassian.com", "methodAlpha"),
      "",
      "methodAlpha",
      [ ["in", "in0", ["::SOAP::SOAPString"]],
        ["in", "in1", ["::SOAP::SOAPString"]],
        ["in", "in2", ["::SOAP::SOAPString"]],
        ["retval", "methodAlphaReturn", ["::SOAP::SOAPLong"]] ],
      { :request_style =>  :rpc, :request_use =>  :encoded,
        :response_style => :rpc, :response_use => :encoded }
    ]
  ]



Is the WSDL wrong? or is this a problem in SOAP4R?



Thanks,

Ben

Change History

08/09/06 21:43:04 changed by nahi

  • status changed from new to closed.
  • resolution set to fixed.

(In [1701]) method overloading support for a Driver based on soapaction. fixed #233.