axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anne Thomas Manes" <a...@manes.net>
Subject Re: WRAPPED services without wsdl
Date Mon, 04 Aug 2003 16:02:13 GMT
You pretty much have to fix the WSDL.
WSDL editors:
- Cape Clear (http://www.capescience.com/downloads/wsdleditor/)
- Omniopera (http://www.omniopera.com)
- XMLSpy (http://www.altova.com/products_ide.html)
- SOAPscope (http://www.mindreef.com/)

Anne

----- Original Message -----
From: "Irazabal, Alex" <Alex.Irazabal@aig.com>
To: <axis-user@ws.apache.org>
Sent: Monday, August 04, 2003 11:31 AM
Subject: RE: WRAPPED services without wsdl


> Thanks. If I use AXIS on both ends (say using WRAPPED services), do I
still
> have the same issues? I have a couple of web services prototypes that
work,
> so I am assuming ( :) ) that is the case...Also any suggestions on a WSDL
> editor/validator?
> Alex
>
> -----Original Message-----
> From: Anne Thomas Manes [mailto:anne@manes.net]
> Sent: Monday, August 04, 2003 11:26 AM
> To: axis-user@ws.apache.org
> 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" <Alex.Irazabal@aig.com>
> To: <axis-user@ws.apache.org>
> 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:anne@manes.net]
> > Sent: Monday, August 04, 2003 10:49 AM
> > To: axis-user@ws.apache.org
> > 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" <Alex.Irazabal@aig.com>
> > To: <axis-user@ws.apache.org>
> > 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:anne@manes.net]
> > > Sent: Monday, August 04, 2003 10:22 AM
> > > To: axis-user@ws.apache.org
> > > 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:muthulee@vijayaba.cse.mrt.ac.lk>
> > > To: axis-user@ws.apache.org <mailto:axis-user@ws.apache.org>
> > > 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.
> > >
> >
>


Mime
View raw message