What is the suggested strategy for dealing with methods where
overloading makes sense?

I know that you recommend working from the WSDL to the code, but the
Axis code generation makes working from code to WSDL easy enough to
avoid that step, therefore I ask these questions without so much
familiarity with what WSDL affords in terms of parameter defintions.
As I see it, either you have a lot of similarly named methods exposing
each overload variant or you have one method that takes all of the
parameters possible. Not sure how removing overloading is a win for
the developer if those are our options.

On 6/13/05, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
> The SOAP 1.1 and WSDL 1.1 specifications allow method overloading. I
> just looked through the SOAP 1.2 specification, and it also appears to
> allow method overloading. WSDL 2.0 disallows method overloading. The
> WS-I Basic Profile also disallows method overloading.
> 
> Axis 1.2 should support method overloading. If it doesn't it's a bug.
> But you shouldn't do it.
> 
> Anne
> 
> On 6/13/05, Brian Gladish <[EMAIL PROTECTED]> wrote:
> >
> >
> >
> > Hi,
> >
> >
> >
> > Our Web Service has a number of "execute" methods which were being invoked
> > properly on 1.1, but which seem to cause Axis confusion on 1.2.  The
> > specific case now is that a method in Java which has the signature
> > execute(String, String) is being confused with execute(String, byte[]) (the
> > latter is being called on the server when the former is invoked on the
> > client).  In addition, the byte[] parameter is being passed in as null even
> > though the string passed as the second argument on the client call is not
> > null and not empty.
> >
> >
> >
> > WSDL for execute(String, String) (this is the method I expect to be
> > invoked):
> >
> >
> >
> >    <wsdl:message name="executeRequest3">
> >
> >       <wsdl:part name="sessionId" type="xsd:string"/>
> >
> >       <wsdl:part name="xQuery" type="xsd:string"/>
> >
> >    </wsdl:message>
> >
> >
> >
> >
> >
> > WSDL for execute(String, byte[]) (the method actually invoked):
> >
> >
> >
> >    <wsdl:message name="executeRequest">
> >
> >       <wsdl:part name="xQuery" type="xsd:string"/>
> >
> >       <wsdl:part name="data" type="xsd:base64Binary"/>
> >
> >    </wsdl:message>
> >
> >
> >
> > Is this a (new) bug that appeared in Axis 1.2 or is Axis 1.2 acting
> > correctly and the problem was that 1.1 should not have supported this
> > overloading?
> >
> >
> >
> > Brian J. Gladish
> >
> > Senior Software Engineer
> >
> > Raining Data Corporation (http://www.rainingdata.com)
> >
> > (949) 260-5140
> >
> >
>

Reply via email to