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 Glen Daniels <gd...@macromedia.com> on 2002/04/18 06:21:31 UTC

RE: cvs commit: xml-axis/java/src/org/apache/axis/description Ser viceDesc.java

Russell, this should fix the problem with skeletons + test.wsdl.types.

--Glen

> -----Original Message-----
> From: gdaniels@apache.org [mailto:gdaniels@apache.org]
> Sent: Thursday, April 18, 2002 12:19 AM
> To: xml-axis-cvs@apache.org
> Subject: cvs commit: xml-axis/java/src/org/apache/axis/description
> ServiceDesc.java
> 
> 
> gdaniels    02/04/17 21:19:14
> 
>   Modified:    java/src/org/apache/axis/description ServiceDesc.java
>   Log:
>   If the introspected type is a Holder, use the held class 
> when determining
>   the type QName.
>   
>   Revision  Changes    Path
>   1.18      +9 -1      
> xml-axis/java/src/org/apache/axis/description/ServiceDesc.java
>   
>   Index: ServiceDesc.java
>   ===================================================================
>   RCS file: 
> /home/cvs/xml-axis/java/src/org/apache/axis/description/Servic
> eDesc.java,v
>   retrieving revision 1.17
>   retrieving revision 1.18
>   diff -u -r1.17 -r1.18
>   --- ServiceDesc.java	15 Apr 2002 02:35:57 -0000	1.17
>   +++ ServiceDesc.java	18 Apr 2002 04:19:14 -0000	1.18
>   @@ -60,6 +60,7 @@
>    import org.apache.axis.wsdl.Skeleton;
>    
>    import javax.xml.rpc.namespace.QName;
>   +import javax.xml.rpc.holders.Holder;
>    import java.util.*;
>    import java.lang.reflect.Method;
>    import java.lang.reflect.InvocationTargetException;
>   @@ -425,8 +426,15 @@
>                        // If no type is specified, just use 
> the Java type
>                        QName typeQName = param.getTypeQName();
>                        if (typeQName == null) {
>   +                        if (Holder.class.isAssignableFrom(type)) {
>   +                            typeQName = tm.getTypeQName(
>   +                                            
> JavaUtils.getHolderValueType(type));
>   +                        } else {
>   +                            typeQName = tm.getTypeQName(type);
>   +                        }
>   +
>                            param.setJavaType(type);
>   -                        param.setTypeQName(tm.getTypeQName(type));
>   +                        param.setTypeQName(typeQName);
>                        } else {
>                            // A type was specified - see if they match
>                            Class paramClass = tm.getClassForQName(
>   
>   
>   
>