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