1) Why don't you use the WSDL2Java tool to discover which <typeMapping>
elements are needed?  Run it with -d Session.

2) How are you determining the qnames for the mapping ?

3) If you are dealing with non-axis clients/servers, it is possible that
arrays can be received that use the type="qname of array" format instead of
the normal type="soapenc:Array" encoding.  To support these cases it is
necessary to have <typeMapping> elements for the array qnames.

4) Your code will need to recoginize JAX-RPC compliant enum classes.

5) Your code will need to dive deeper if a bean contains a bean.  And needs
to handle any looping problems, etc.

6) Remember that some types (java.math.BigDecimal) are defined as 'basic
types'.


It sounds like what you are trying to do is already available in WSDL2Java.

Hope this helps ?  If you believe that what you are doing is truly
necessary, maybe it should be built into the Axis runtime.

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


                                                                                       
                                          
                      "Peake, Chris"                                                   
                                          
                      <[EMAIL PROTECTED]        To:       
"\"[EMAIL PROTECTED]\"" <[EMAIL PROTECTED]>               
                      om>                      cc:                                     
                                          
                                               Subject:  <typeMapping> determination 
programmatically                            
                      02/14/2002 03:03                                                 
                                          
                      PM                                                               
                                          
                      Please respond to                                                
                                          
                      axis-user                                                        
                                          
                                                                                       
                                          
                                                                                       
                                          



I am programmatically, trying to determine if I need
<beanMapping>/<typeMapping> elements in my WSDDService deployment.

If I use java reflection on the candidate methods for Web Service
deployment and look at the return type and parameter list to see if any of
these are NON java basic types then they become <typeMapping>s which I will
include in the WSDDService as WSDDTypeMappings.

Current constraint is that no special serializer/deserializers are required
for any non-basic type.
Only the default BeanSerializer and BeanDeserFactor.

Assuming the above is correct, the questions I then have are:
1-I assume I must then 'reflect' on these non basic types then.
2-a:if that is true, then do I limit my introspection of this 'bean' to
just get/set methods?
   b:all methods?
   c:fields?
   d:Any 'modifer' considerations?
3-So, continually walk the tree down until 'only' basic java types are in
the signatures.

Any other comments are welcome too.

thanks,
 chris





Chris Peake
Computer Associates
Software Engineer
tel: +1 214 473 1375
fax: +1 214 473 1168
[EMAIL PROTECTED]





Reply via email to