You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by R J Scheuerle Jr <sc...@us.ibm.com> on 2002/01/12 17:37:18 UTC

Lightweight Skeletons

Changed WSDL2Java and the runtime (RPCProvider, JavaUtils.convert) to use
"lightweight" skeletons.
The skeletons now have the same method signatures as the impl, stub, and
portType.
The skeletons delegate directly to the impl, the runtime 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 associate names with the output values.  So if this is not
necessary for your service, no skeleton is 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 the
output values.  For the time being, these new lightweight
skeletons will be used.

I also added a -S <true_or_false> option to WSDL2Java to indicate whether
to deploy the skeleton (true) or the impl (false).  The
default is currently true.

Enjoy,

Rich Scheuerle
XML & Web Services Development
512-838-5115  (IBM TL 678-5115)


RE: Philosophical question about WSDL and web service frameworks

Posted by Anne Thomas Manes <an...@manes.net>.
James,

I took a look at the xCBL order.xsd schema. One problem that I see is that
it includes the <xsd:choice> element. Hence Systinet WASP doesn't support
this schema. Although Systinet WASP support almost all of XML Schema, we
haven't figured out how to map a <choice> element to a Java object. Perhaps
someone has some ideas on how this can be done?

Regards,
Anne Thomas Manes
CTO, Systinet

> -----Original Message-----
> From: James Yegerlehner [mailto:james@kamiak.com]
> Sent: Saturday, January 12, 2002 5:12 PM
> To: axis-dev@xml.apache.org
> Cc: jsr-101-comments@jcp.org; mark@kamiak.com
> Subject: Philosophical question about WSDL and web service frameworks
>
>
> Hello all:
>
> Specialized markup languages are proliferating. Each such language defines
> types particular to some problem domain. For example, the xCBL schemas
> (www.xcbl.org) define schemas for types related to business transactions:
> invoice, product catalog, order, etc are all defined by xCBL.
>
> The complementary nature of these schemas to WSDL is obvious:
> WSDL specifies
> the type of each message part using a type or element in an XML
> schema. One
> must expect that developers of web services will wish to use the types
> defined by schema relevant to their problem domain. The natural way to
> proceed is to 1. create a WSDL document defining the web service interface
> and incorporating these domain-specific schema, and 2. generate the web
> service skeleton automatically from the WSDL.
>
> I think the authors of most of the web service frameworks realize
> that this
> is desirable, because they have utilities that allow creation of classes
> from WSDL.  But we haven't found a single one that can
> successfully create a
> skeleton if the web service includes an instance of the xCBL:Order and
> xCBL:OrderResponse types. There's nothing special about Order and
> OrderResponse except that these just happen to be the two we chose for the
> our test case.
>
> So my questions are: is it desirable that a service skeleton generator
> (WSDL2Java in the case of Axis) should be able to map WSDL that
> may contain
> _any_ valid schema? It seems so to me but I don't hear anyone else talking
> about this. Is it feasible? Do the current contributors to WSDL2Java have
> any plans in this direction?
>
> BTW I'm not complaining about Axis. I understand that it's open source and
> if I want certain functionality I should be willing to contribute it.
>
> Regards,
> ------------
> James Yegerlehner
> Omniopera: XML Schema and WSDL Authoring Software
> http://www.omniopera.com
>


Philosophical question about WSDL and web service frameworks

Posted by James Yegerlehner <ja...@kamiak.com>.
Hello all:

Specialized markup languages are proliferating. Each such language defines
types particular to some problem domain. For example, the xCBL schemas
(www.xcbl.org) define schemas for types related to business transactions:
invoice, product catalog, order, etc are all defined by xCBL.

The complementary nature of these schemas to WSDL is obvious: WSDL specifies
the type of each message part using a type or element in an XML schema. One
must expect that developers of web services will wish to use the types
defined by schema relevant to their problem domain. The natural way to
proceed is to 1. create a WSDL document defining the web service interface
and incorporating these domain-specific schema, and 2. generate the web
service skeleton automatically from the WSDL.

I think the authors of most of the web service frameworks realize that this
is desirable, because they have utilities that allow creation of classes
from WSDL.  But we haven't found a single one that can successfully create a
skeleton if the web service includes an instance of the xCBL:Order and
xCBL:OrderResponse types. There's nothing special about Order and
OrderResponse except that these just happen to be the two we chose for the
our test case.

So my questions are: is it desirable that a service skeleton generator
(WSDL2Java in the case of Axis) should be able to map WSDL that may contain
_any_ valid schema? It seems so to me but I don't hear anyone else talking
about this. Is it feasible? Do the current contributors to WSDL2Java have
any plans in this direction?

BTW I'm not complaining about Axis. I understand that it's open source and
if I want certain functionality I should be willing to contribute it.

Regards,
------------
James Yegerlehner
Omniopera: XML Schema and WSDL Authoring Software
http://www.omniopera.com