You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Andrew Burke <an...@webgain.com> on 2001/06/05 19:33:25 UTC

RE: usage of custom classes in requests, WSDL issue

As I see it, this is definitely a problem. First, as you noted, there
is the problem of the distribution of the custom classes. But isn't there
also the issue of how those classes are registered for the serialization?

Here is an example of some Apache SOAP code, which, as I understand things,
essentially defines the mapping between the client class and the server
class:
    SMR = new SOAPMappingRegistry(); 
    BeanSerialer = new BeanSerializer(); 

    SMR.mapTypes(Constants.NS_URI_SOAP_ENC, 
      new QName("urn:MutualFundService","Date"), <----------- line of
interest
      com.webgain.Services.MutualFund.Date.class, BeanSerialer,
BeanSerialer); 

Again, as I understand things, the definition of the QName MUST match that
used on the server side. However, the two parts of the QName (namespace URI
and local part) are not defined in the WSDL file (PLEASE SOMEONE, CORRECT ME
IF I'M WRONG!). This information is only available in the deployment
descriptor
or in the server source.

So, if the QName used to register the class or the class itself changes, the
clients must be changed. This is not very cool, and certainly would lead one
to simplify all arguments to/from, as I see things.

andrew burke

-----Original Message-----
From: Ed Keen [mailto:edk@interactiveportal.com]
Sent: Tuesday, June 05, 2001 7:42 AM
To: 'soap-user@xml.apache.org'
Cc: 'soapbuilders@yahoogroups.com'
Subject: usage of custom classes in requests


I would like feedback on the whether or not any of you are using custom
classes in your soap calls.  While it is definitely convenient on the Apache
server side (with its serializers & deserializers), it places an extra
burden on the client, because now they must have these custom classes on
their side too.  For win32 clients, this becomes an even more difficult
task.  Our company would probably wind up writing a DLL that would contain
the analog of our custom classes for Windows.  So, whenever the interface
for these classes changes (say we add a new required field), we would have
to redistribute the client classes.  This could become a distribution
nightmare.

I am wondering if it would be less trouble to just have the clients send all
their data as separate parameters (which could make for a long parameter
list, I know) to some proxy-type servlet on the server-side which would
intercept the soap call, package that data into our custom classes, and send
the request on its way.  It's more work on the server-side, but it would
avoid the need to distribute these custom serailizable client classes.

Does any of that make sense?  What are the rest of you doing in regards to
this?  Please don't tell me to use WSDL.  Been there.  Tried that.

Thanks,
Ed


---------------------------------------------------------------------
To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
For additional commands, email: soap-user-help@xml.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
For additional commands, email: soap-user-help@xml.apache.org