Venkat,

does reverting the change in SymbolTable.java *ONLY* fix the problem?

-- dims

On 7/15/05, Tom Jordahl <[EMAIL PROTECTED]> wrote:
> Hi Venkat,
> 
> I was trying to make sure that anonymous types did not show up in the
> deploy.wsdd.  I also was seeing zillions of files getting generated from
> wrapped services that were never used since we were unwrapping the
> service.
> 
> This change fixed that.
> 
> Sounds like it doesn't handle the amazon.com service right.  I am not
> sure why, as this should only be filtering anonymous type references.
> 
> --
> Tom Jordahl
> Macromedia Server Development
> 
> > -----Original Message-----
> > From: Venkat Reddy [mailto:[EMAIL PROTECTED]
> > Sent: Friday, July 15, 2005 8:39 AM
> > To: axis-dev@ws.apache.org; [EMAIL PROTECTED]
> > Subject: Re: cvs commit:
> ws-axis/java/src/org/apache/axis/wsdl/symbolTable
> > SymbolTable.java Utils.java
> >
> > Tom,
> >
> > I have traced the issue of AXIS-2107 (Amazon wsdl) to this commit. Can
> > you review these changes in Utils.java?
> >
> > thanks
> > Venkat
> >
> > On 3 Jun 2005 22:23:50 -0000, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > > tomj        2005/06/03 15:23:50
> > >
> > >   Modified:    java/src/org/apache/axis/wsdl/symbolTable
> > SymbolTable.java
> > >                         Utils.java
> > >   Log:
> > >   Utils.java:
> > >   - Prevent anonymous types from being marked as referenced when the
> > >     xsd:anyType is used in the WSDL.
> > >     This was causing the types to be emitted and the deploy.wsdd
> file
> > >     would have typemappings for these (made up) QNames.
> > >
> > >     Test case will follow in test/wsdl/query when I fix some other
> bugs.
> > >
> > >   SymbolTable.java:
> > >   - Add a comment
> > >
> > >   Revision  Changes    Path
> > >   1.120     +7 -1      ws-
> > axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java
> > >
> > >   Index: SymbolTable.java
> > >
> ===================================================================
> > >   RCS file: /home/cvs/ws-
> > axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java,v
> > >   retrieving revision 1.119
> > >   retrieving revision 1.120
> > >   diff -u -r1.119 -r1.120
> > >   --- SymbolTable.java  13 Apr 2005 16:22:52 -0000      1.119
> > >   +++ SymbolTable.java  3 Jun 2005 22:23:50 -0000       1.120
> > >   @@ -3287,7 +3287,13 @@
> > >                 continue;
> > >                }
> > >
> > >   -            if ((refType != null) && !refType.equals(nestedType)
> > >   +            // If this entry has a referenced type that isn't
> > >   +            // the same as the nested type
> > >   +            // AND the OnlyLiteral reference switch is on
> > >   +            // THEN turn the OnlyLiteral reference switch off.
> > >   +            // If only someone had put a comment here saying why
> we
> > do this...
> > >   +            if ((refType != null)
> > >   +                    && !refType.equals(nestedType)
> > >                        && nestedType.isOnlyLiteralReferenced()) {
> > >                    nestedType.setOnlyLiteralReference(false);
> > >                }
> > >
> > >
> > >
> > >   1.45      +10 -9     ws-
> > axis/java/src/org/apache/axis/wsdl/symbolTable/Utils.java
> > >
> > >   Index: Utils.java
> > >
> ===================================================================
> > >   RCS file: /home/cvs/ws-
> > axis/java/src/org/apache/axis/wsdl/symbolTable/Utils.java,v
> > >   retrieving revision 1.44
> > >   retrieving revision 1.45
> > >   diff -u -r1.44 -r1.45
> > >   --- Utils.java        4 Mar 2005 08:43:52 -0000       1.44
> > >   +++ Utils.java        3 Jun 2005 22:23:50 -0000       1.45
> > >   @@ -22,12 +22,7 @@
> > >
> > >    import javax.xml.namespace.QName;
> > >    import javax.xml.rpc.holders.BooleanHolder;
> > >   -import java.util.HashMap;
> > >   -import java.util.HashSet;
> > >   -import java.util.Iterator;
> > >   -import java.util.Map;
> > >   -import java.util.StringTokenizer;
> > >   -import java.util.Vector;
> > >   +import java.util.*;
> > >
> > >    /**
> > >     * This class contains static utility methods for the emitter.
> > >   @@ -526,12 +521,18 @@
> > >
> > >            if ((type != null) && (type.getNode() != null)) {
> > >                getDerivedTypes(type, types, symbolTable);
> > >   -        } else if
> > (Constants.isSchemaXSD(type.getQName().getNamespaceURI())
> > >   +        }
> > >   +        else if (type != null &&
> > Constants.isSchemaXSD(type.getQName().getNamespaceURI())
> > >                    &&
> (type.getQName().getLocalPart().equals("anyType")
> > >                    || type.getQName().getLocalPart().equals("any")))
> {
> > >
> > >   -            // All types are derived from anyType
> > >   -            types.addAll(symbolTable.getTypeIndex().values());
> > >   +            // All types are derived from anyType, except
> anonymous
> > ones
> > >   +            final Collection typeValues =
> > symbolTable.getTypeIndex().values();
> > >   +            for (Iterator it = typeValues.iterator();
> it.hasNext();)
> > {
> > >   +                SymTabEntry e = (SymTabEntry) it.next();
> > >   +                if (!
> > e.getQName().getLocalPart().startsWith(SymbolTable.ANON_TOKEN))
> > >   +                    types.add(e);
> > >   +            }
> > >            }
> > >
> > >            return types;
> > >
> > >
> > >
> > >
> 


-- 
Davanum Srinivas -http://blogs.cocoondev.org/dims/

Reply via email to