+1.

----- Original Message -----
From: "Hansen, Richard" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, August 04, 2003 11:32 AM
Subject: RE: WRAPPED services without wsdl


> Or you could start with the wsdl. Create valid wsdl then generate the java
> classes from it. I have come to the conclusion that starting with wsdl is
a
> "best practice" just to avoiud conversion error and differences.
>
> > -----Original Message-----
> > From: Anne Thomas Manes [mailto:[EMAIL PROTECTED]
> > Sent: Monday, August 04, 2003 10:26 AM
> > To: [EMAIL PROTECTED]
> > Subject: Re: WRAPPED services without wsdl
> >
> >
> > Generate the WSDL, then use a WSDL editor/validator to
> > identify and work
> > through the errors. Most of the errors relate to namespace problems.
> > Java2WSDL generates an empty targetNamespace in the <schema>
> > definition.
> >
> > ----- Original Message -----
> > From: "Irazabal, Alex" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Monday, August 04, 2003 10:56 AM
> > Subject: RE: WRAPPED services without wsdl
> >
> >
> > > Thanks to all who replied...one last question: How is one
> > to avoid these
> > > WSDL errors? Are they documented? Work-arounds?
> > > Thanks,
> > > A
> > >
> > > -----Original Message-----
> > > From: Anne Thomas Manes [mailto:[EMAIL PROTECTED]
> > > Sent: Monday, August 04, 2003 10:49 AM
> > > To: [EMAIL PROTECTED]
> > > Subject: Re: WRAPPED services without wsdl
> > >
> > >
> > > Alex,
> > >
> > > 1. Using doc/literal on the wire reduces interoperability
> > problems. The
> > WS-I
> > > Basic Profile requires the use of literal. From the on-the-wire SOAP
> > message
> > > perspective, WRAPPED and DOCUMENT are identical -- they both produce
> > > document/literal on the wire. The only difference between these two
> > options
> > > is in what gets produced by Java2WSDL and WSDL2Java. When
> > you use WRAPPED,
> > > your WSDL file uses certain naming conventions that cause
> > WSDL2Java to
> > > produce an interface that supports invocation like:
> > >       string return = myProxy.methodName( param1, param2 );
> > > When you use DOCUMENT, WSDL2Java produces an interface like:
> > >       string return = myProxy.methodName( javaBean );
> > >
> > > 2. Clients figure out how to use your service by
> > interpreting your WSDL
> > > file. If you let Axis generate your WSDL file for a
> > doc/literal service,
> > > currently it produces errors. You know what format your
> > service needs to
> > > process the requests, so you can build a client manually
> > using the call
> > > object. But other developers don't know anything about the
> > service other
> > > than what the WSDL tells them. If your WSDL has errors, no
> > other clients
> > > will be able to access your service.
> > >
> > > Anne
> > >
> > >
> > > ----- Original Message -----
> > > From: "Irazabal, Alex" <[EMAIL PROTECTED]>
> > > To: <[EMAIL PROTECTED]>
> > > Sent: Monday, August 04, 2003 10:33 AM
> > > Subject: RE: WRAPPED services without wsdl
> > >
> > >
> > > > Anne, can you clarify a couple of things for me, please?
> > > > 1) What is the benefit of doc/literal on the wire using WRAPPED
> > services?
> > > > Why would one care what format is on the wire...
> > > > 2) What do you mean "other clients won't be able to
> > figure out how to
> > > access
> > > > your service"?
> > > >
> > > > Thanks,
> > > > Alex
> > > >
> > > > [Irazabal, Alex]
> > > >  -----Original Message-----
> > > > From: Anne Thomas Manes [mailto:[EMAIL PROTECTED]
> > > > Sent: Monday, August 04, 2003 10:22 AM
> > > > To: [EMAIL PROTECTED]
> > > > Subject: Re: WRAPPED services without wsdl
> > > >
> > > >
> > > >
> > > > I don't understand why you would try to create a WRAPPED
> > web service
> > > without
> > > > using WSDL? It doesn't make any sense. The whole point
> > behind WRAPPED is
> > > to
> > > > let you generate a client proxy object using WSDL2Java so
> > that you can
> > > > invoke the service using an RMI-style invocation (method name with
> > > > parameters). From the client developer's point of view,
> > WRAPPED makes
> > the
> > > > service look and feel like rpc/encoded, but on the wire it's
> > doc/literal.
> > > >
> > > > But if you aren't using WSDL2Java, then you'll have to
> > use the call
> > > object.
> > > >
> > > > I don't think that Axis provides a mechanism to reference
> > a schema file.
> > > It
> > > > only supports WSDL. Besides, Axis will always create a
> > WSDL file for you
> > > > when you deploy the service. The problem is that right now, the
> > generated
> > > > WSDL will have errors in it, which means that other
> > clients won't be
> > able
> > > to
> > > > figure out how to access your service.
> > > >
> > > > Here's some sample client code for a typical WRAPPED
> > service. It should
> > > look
> > > > pretty much identical to client code for an RPC service:
> > > >
> > > > package test.axis.wrapped.client;
> > > >
> > > > import javax.xml.namespace.QName;
> > > > import javax.xml.rpc.Service;
> > > > import javax.xml.rpc.ServiceFactory;
> > > > import java.net.URL;
> > > > import test.axis.wrapped.iface;
> > > >
> > > > public class AxisWrappedClient
> > > > {
> > > >    public static void main(String[]args) throws Exception {
> > > >         String UrlString = "wsdl-url";
> > > >         String nameSpaceUri = "urn:axis.wrapped"
> > > >         String serviceName = "WrappedService";
> > > >         String portName = "WrappedServicePort";
> > > >
> > > >         URL currWsdlUrl = new URL(UrlString);
> > > >         ServiceFactory serviceFactory =
> > ServiceFactory.newInstance();
> > > >         Service currService =
> > serviceFactory.createService(currWsdlUrl,
> > > >                 new QName(nameSpaceUri, serviceName));
> > > >
> > > >         Curr myProxy = (Curr) currService.getPort(
> > > >                 new QName(nameSpaceUri, portName),
> > > >                 test.axis.wrapped.iface.class);
> > > >
> > > >        string return = myProxy.methodName( arg[0], arg[1] );
> > > >
> > > >    }
> > > > }
> > > >
> > > >
> > > > Note that test.axis.wrapped.iface is the interface generated by
> > WSDL2Java.
> > > >
> > > > Anne
> > > >
> > > >
> > > >
> > > > ----- Original Message -----
> > > >
> > > > From: Dimuthu Leelarathne <mailto:[EMAIL PROTECTED]>
> > > > To: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> > > > Sent: Monday, August 04, 2003 12:42 AM
> > > > Subject: WRAPPED services without wsdl
> > > >
> > > >
> > > > Hi all,
> > > >
> > > > I'm trying to write a wrapped web service without using
> > wsdl. I have
> > some
> > > > simple basic questions,
> > > >
> > > > 1. Where should I put the xml schema ? Should it be inside wsdd or
> > should
> > > I
> > > > put a reference  to it in the wsdd ?
> > > >
> > > > 2. I read something like this written by Anne ;
> > > >
> > > > The main reason that you want to use WRAPPED
> > > > is so that you can invoke your service using something like this:
> > > > string ResponseInfo = service.SubscriptionRequest(
> > usedId, password );
> > > >
> > > > If this is the case how can I provide it in the client without
> > > instantiating
> > > > a call object ? Since wsdl is not used stubs, SDI and etc
> > ..... won't be
> > > > created. So should I just anyway go ahead and use the
> > call object ?
> > > >
> > > > Thank you,
> > > > Dimuthu.
> > > >
> > >
> >
>

Reply via email to