Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 93956 invoked by uid 500); 14 Jan 2002 16:28:00 -0000 Mailing-List: contact axis-dev-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@xml.apache.org Received: (qmail 93947 invoked from network); 14 Jan 2002 16:27:59 -0000 Message-ID: <64510FFDEBCAD511B8CB00065B055DE3093658@galaxy.natsys.fr> From: =?iso-8859-1?Q?C=E9dric_Chabanois?= To: "'axis-dev@xml.apache.org'" Subject: RE: Re : Lightweight Skeletons Date: Mon, 14 Jan 2002 17:25:58 +0100 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Thanks,=20 I understand better now ! I still have questions concerning this point : - if implementation class was compiled with -g, we know the names of = the output parameters, don't we ? So skeletton should not be necessary=20 - if implementation class was not compiled with -g, getParametersNames = is used to get the names of the output parameters. But the client (written in Delphi, MS.NET ...) has been created using = the wsdl, so it may be waiting for inout# parameters as the wsdl does not = have correct parameter names (because implementation class not compiled with = -g ...) So I think that if skeleton is present, getParameterNames should be = used to create the wsdl parameter names. C=E9dric > The getParameterNames(...) method is used by the AXIS runtime=20 > so that it > can get the names of the output parameters to pass back. This > functionality used to be embedded in the skeleton methods. >=20 > You are pointing out that the getParameterNames(...) method=20 > could also be > used by Java2WSDL to get the parameter names for the wsdl file. > You are correct, but I have not added this code yet. >=20 > Rich Scheuerle > XML & Web Services Development > 512-838-5115 (IBM TL 678-5115) >=20 >=20 > =20 > =20 > C=E9dric Chabanois =20 > =20 > axis-dev@xml.apache.org =20 > =20 > case.fr> cc: =20 > =20 > Subject: Re :=20 > Lightweight Skeletons =20 > 01/14/2002 09:36 =20 > =20 > AM =20 > =20 > Please respond to =20 > =20 > axis-dev =20 > =20 > =20 > =20 > =20 > =20 >=20 >=20 >=20 >=20 > I think this is good news but I don't know if I have well=20 > understood the > consequences. >=20 > Say I have a web service (2 classes : the interface and the impl) >=20 > 1) If I compile it with -g, parameter names are available so=20 > the skeleton > is > not necessary. Am I right ? > The ?wsdl will have correct parameters (not in0, inout0 ...) >=20 > 2) If I don't compile it with -g, parameter names are not available. > Skeleton can be useful in this case because I can implement > getParameterName > and init functions that will tell the parameter names. >=20 > Personnaly, I have made a skeleton (and added it in the wsdd=20 > file) but I > still don't have correct parameter names in the generated=20 > wsdl (?wsdl). >=20 > Why ? >=20 >=20 > C=E9dric >=20 >=20 > >Changed WSDL2Java and the runtime (RPCProvider,=20 > JavaUtils.convert) to use > "lightweight" skeletons. > >The skeletons now have the same method signatures as the=20 > impl, stub, and > portType. > >The skeletons delegate directly to the impl, the runtime=20 > automatically > builds the proper Holder objects as necessary. > >The only purpose for the skeletons is to provide a new method > getParameterName(opName, i) which is used by RPCProvider to=20 > associate names > with the output values. > >So if this is not necessary for your service, no skeleton is=20 > needed. This > is a big step towards the complete removal of skeletons. > >For example, if the server has wsdl or other meta data, the runtime > *could* > automatically use the meta data to get the element names for=20 > the output > values. > >For the time being, these new lightweight skeletons will be used. > >I also added a -S option to WSDL2Java to=20 > indicate whether > to deploy the skeleton (true) or the impl (false). >The default is > currently > true. Enjoy, Rich Scheuerle XML & Web Services Development=20 > 512-838-5115 > (IBM > TL 678-5115) >=20 >=20 >=20 >=20