Return-Path: Delivered-To: apmail-ws-axis-dev-archive@www.apache.org Received: (qmail 80427 invoked from network); 17 Jul 2005 09:56:34 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 17 Jul 2005 09:56:34 -0000 Received: (qmail 7734 invoked by uid 500); 17 Jul 2005 09:56:32 -0000 Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 7687 invoked by uid 500); 17 Jul 2005 09:56:31 -0000 Mailing-List: contact axis-dev-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@ws.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list axis-dev@ws.apache.org Received: (qmail 7670 invoked by uid 99); 17 Jul 2005 09:56:31 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 17 Jul 2005 02:56:31 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=RCVD_BY_IP,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of vreddyp@gmail.com designates 64.233.170.196 as permitted sender) Received: from [64.233.170.196] (HELO rproxy.gmail.com) (64.233.170.196) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 17 Jul 2005 02:56:27 -0700 Received: by rproxy.gmail.com with SMTP id z35so1057190rne for ; Sun, 17 Jul 2005 02:56:29 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=d4dKRmg40wD6Mphk+5BFrHaEreXrwlXm7TGaMvhiybG+9W7CCYQtIAxumqKtXewZD9RboW6g9HDwwB4CV3FQqeS3Dl4pjxafhGWvEPgA7pv1hP+j0FreRW6nIx0xI4FOEcK7Hh/BqOBNbU09gvnIgOPqDk7x0dgfIBRa7wOzHyM= Received: by 10.38.97.67 with SMTP id u67mr1016894rnb; Sun, 17 Jul 2005 02:56:29 -0700 (PDT) Received: by 10.38.89.4 with HTTP; Sun, 17 Jul 2005 02:56:29 -0700 (PDT) Message-ID: Date: Sun, 17 Jul 2005 15:26:29 +0530 From: Venkat Reddy Reply-To: Venkat Reddy To: Tom Jordahl Subject: Re: cvs commit: ws-axis/java/src/org/apache/axis/wsdl/symbolTable SymbolTable.java Utils.java Cc: axis-dev@ws.apache.org, tomj@apache.org In-Reply-To: <39A72E1EBF03EB44AACFD8036D1489F9DF7047@p02exm01.macromedia.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <39A72E1EBF03EB44AACFD8036D1489F9DF7047@p02exm01.macromedia.com> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Tom, In Amazon wsdl case, the element "Help" is referenced in two ways - first as the wrapper element for the operation "Help", and then as a child element of another wrapper element for another operation. However, it is stored as anon type in the sybol table, and excluded by the new logic added to Utils.java, as follows : =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D wsdl/symbolTable/Utils.java: line 529: // All types are derived from anyType, except anonymous ones final Collection typeValues =3D symbolTable.getTypeIndex().valu= es(); for (Iterator it =3D typeValues.iterator(); it.hasNext();) { SymTabEntry e =3D (SymTabEntry) it.next(); =20 // [Venkat] this check excludes "Help" element from being added to types. if (! e.getQName().getLocalPart().startsWith(SymbolTable.ANON_TOKEN)) types.add(e); } =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D I think, either we need to fix the way anon types are identified, or we need to remove the exclusion of anon types from being generated. -- Venkat On 7/15/05, Tom Jordahl wrote: > Hi Venkat, >=20 > 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. >=20 > This change fixed that. >=20 > 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. >=20 > -- > Tom Jordahl > Macromedia Server Development >=20 > > -----Original Message----- > > From: Venkat Reddy [mailto:vreddyp@gmail.com] > > Sent: Friday, July 15, 2005 8:39 AM > > To: axis-dev@ws.apache.org; tomj@apache.org > > 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, tomj@apache.org 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 > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > 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 !=3D 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 !=3D 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 > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > 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 !=3D null) && (type.getNode() !=3D null)) { > > > getDerivedTypes(type, types, symbolTable); > > > - } else if > > (Constants.isSchemaXSD(type.getQName().getNamespaceURI()) > > > + } > > > + else if (type !=3D 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 =3D > > symbolTable.getTypeIndex().values(); > > > + for (Iterator it =3D typeValues.iterator(); > it.hasNext();) > > { > > > + SymTabEntry e =3D (SymTabEntry) it.next(); > > > + if (! > > e.getQName().getLocalPart().startsWith(SymbolTable.ANON_TOKEN)) > > > + types.add(e); > > > + } > > > } > > > > > > return types; > > > > > > > > > > > > >