Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 13887 invoked by uid 500); 5 Nov 2002 18:28:36 -0000 Mailing-List: contact axis-dev-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@xml.apache.org Received: (qmail 13877 invoked from network); 5 Nov 2002 18:28:36 -0000 Date: Tue, 5 Nov 2002 10:28:35 -0800 Subject: Re: cvs commit: xml-axis/java/test/message TestMessageElement.jav a Content-Type: text/plain; delsp=yes; charset=US-ASCII; format=flowed Mime-Version: 1.0 (Apple Message framework v546) From: Sasha Lerner To: axis-dev@xml.apache.org Content-Transfer-Encoding: 7bit In-Reply-To: <20021105161438.36944.qmail@web12805.mail.yahoo.com> Message-Id: <6539AA14-F0EC-11D6-8B5C-003065E57CC6@grandcentral.com> X-Mailer: Apple Mail (2.546) X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N its needed in SAAJ API because the only way to get or remove the additional namespace URIs from SOAPElement is by prefix http://java.sun.com/webservices/docs/1.0/api/javax/xml/soap/ SOAPElement.html#getNamespaceURI(java.lang.String) here is javadoc: /** * Returns an iterator of namespace prefixes. The iterator can be used to get the namespace prefixes, which * can then be passed to the method getNamespaceURI to retrieve the URI of each namespace. * @return an iterator over the namespace prefixes in this SOAPElement object */ On Tuesday, November 5, 2002, at 08:14 AM, Davanum Srinivas wrote: > I don't either....It's there in the SAAJ API so we can't drop it. > (http://java.sun.com/webservices/docs/1.0/api/javax/xml/soap/ > SOAPElement.html#getNamespacePrefixes()) > > Thanks, > dims > > --- Glen Daniels wrote: >> >> Thanks, Dims! >> >> What the heck is the point of getNamespacePrefixes(), anyway? >> Doesn't seem very useful to me, >> unless you're trying to figure out a new prefix so it doesn't collide >> with an already-mapped >> one. *shrug* >> >> --Glen >> >>> -----Original Message----- >>> From: dims@apache.org [mailto:dims@apache.org] >>> Sent: Tuesday, November 05, 2002 10:53 AM >>> To: xml-axis-cvs@apache.org >>> Subject: cvs commit: xml-axis/java/test/message >>> TestMessageElement.java >>> >>> >>> dims 2002/11/05 07:53:18 >>> >>> Modified: java/src/org/apache/axis/message MessageElement.java >>> java/test/message TestMessageElement.java >>> Log: >>> - Reworking previous Fix for Bug 14140 to prevent object creation. >>> - Checking in a test case as well. >>> >>> Revision Changes Path >>> 1.135 +16 -14 >>> xml-axis/java/src/org/apache/axis/message/MessageElement.java >>> >>> Index: MessageElement.java >>> =================================================================== >>> RCS file: >>> /home/cvs/xml-axis/java/src/org/apache/axis/message/MessageEle >>> ment.java,v >>> retrieving revision 1.134 >>> retrieving revision 1.135 >>> diff -u -r1.134 -r1.135 >>> --- MessageElement.java 5 Nov 2002 14:40:31 -0000 1.134 >>> +++ MessageElement.java 5 Nov 2002 15:53:17 -0000 1.135 >>> @@ -143,7 +143,7 @@ >>> >>> protected MessageElement parent = null; >>> >>> - public ArrayList namespaces = new ArrayList(); >>> + public ArrayList namespaces = null; >>> >>> /** Our encoding style, if any */ >>> protected String encodingStyle = null; >>> @@ -301,7 +301,7 @@ >>> * @return Attributes collection >>> */ >>> public Attributes getCompleteAttributes() { >>> - if (namespaces.size()==0) >>> + if (namespaces == null) >>> return attributes; >>> >>> AttributesImpl attrs = null; >>> @@ -447,8 +447,7 @@ >>> >>> public void setNSMappings(ArrayList namespaces) >>> { >>> - if(namespaces != null) >>> - this.namespaces = namespaces; >>> + this.namespaces = namespaces; >>> } >>> >>> public String getPrefix(String namespaceURI) { >>> @@ -459,7 +458,7 @@ >>> return getRealElement().getPrefix(namespaceURI); >>> } >>> >>> - for (int i = 0; i < namespaces.size(); i++) { >>> + for (int i = 0; namespaces != null && i < >>> namespaces.size(); i++) { >>> Mapping map = (Mapping)namespaces.get(i); >>> if (map.getNamespaceURI().equals(namespaceURI)) >>> return map.getPrefix(); >>> @@ -479,7 +478,7 @@ >>> return getRealElement().getNamespaceURI(prefix); >>> } >>> >>> - for (int i = 0; i < namespaces.size(); i++) { >>> + for (int i = 0; namespaces != null && i < >>> namespaces.size(); i++) { >>> Mapping map = (Mapping)namespaces.get(i); >>> if (map.getPrefix().equals(prefix)) { >>> return map.getNamespaceURI(); >>> @@ -780,10 +779,12 @@ >>> if (prefix != null) >>> context.registerPrefixForURI(prefix, namespaceURI); >>> >>> - for (Iterator i = namespaces.iterator(); i.hasNext();) { >>> - Mapping mapping = (Mapping) i.next(); >>> - >>> context.registerPrefixForURI(mapping.getPrefix(), >>> mapping.getNamespaceURI()); >>> - } >>> + if (namespaces != null) { >>> + for (Iterator i = namespaces.iterator(); >>> i.hasNext();) { >>> + Mapping mapping = (Mapping) i.next(); >>> + >>> context.registerPrefixForURI(mapping.getPrefix(), >>> mapping.getNamespaceURI()); >>> + } >>> + } >>> >>> if (objectValue != null) { >>> context.serialize(new QName(namespaceURI, name), >>> @@ -812,6 +813,8 @@ >>> } >>> >>> public void addMapping(Mapping map) { >>> + if (namespaces == null) >>> + namespaces = new ArrayList(); >>> namespaces.add(map); >>> } >>> >>> @@ -1033,9 +1036,8 @@ >>> // getNamespaceURI implemented above >>> >>> public Iterator getNamespacePrefixes() { >>> - int num = namespaces.size(); >>> - Vector prefixes = new Vector(num); >>> - for (int i = 0; i < num; i++) { >>> + Vector prefixes = new Vector(); >>> + for (int i = 0; namespaces != null && i < >>> namespaces.size(); i++) { >>> >>> prefixes.add(((Mapping)namespaces.get(i)).getPrefix()); >>> } >>> return prefixes.iterator(); >>> @@ -1063,7 +1065,7 @@ >>> AttributesImpl attributes = makeAttributesEditable(); >>> boolean removed = false; >>> >>> - for (int i = 0; i < namespaces.size() && !removed; i++) { >>> + for (int i = 0; namespaces != null && i < >>> namespaces.size() && !removed; i++) { >>> if >>> (((Mapping)namespaces.get(i)).getPrefix().equals(prefix)) { >>> namespaces.remove(i); >>> removed = true; >>> >>> >>> >>> 1.7 +8 -1 >>> xml-axis/java/test/message/TestMessageElement.java >>> >>> Index: TestMessageElement.java >>> =================================================================== >>> RCS file: >>> /home/cvs/xml-axis/java/test/message/TestMessageElement.java,v >>> retrieving revision 1.6 >>> retrieving revision 1.7 >>> diff -u -r1.6 -r1.7 >>> --- TestMessageElement.java 4 Nov 2002 19:51:20 -0000 1.6 >>> +++ TestMessageElement.java 5 Nov 2002 15:53:18 -0000 1.7 >>> @@ -178,8 +178,15 @@ >>> assertTrue("Did not find namespace declaration >>> \"pre\"", found); >>> } >>> >>> + public void testGetNamespacePrefixes() throws Exception { >>> + MessageElement me = >>> + new MessageElement("http://www.wolfram.com","Test"); >>> + Iterator it = me.getNamespacePrefixes(); >>> + assertTrue(it != null); >>> + } >>> + >>> public static void main(String[] args) throws Exception { >>> TestMessageElement tester = new >>> TestMessageElement("TestMessageElement"); >>> - tester.testAddNamespaceDeclaration(); >>> + tester.testGetNamespacePrefixes(); >>> } >>> } >>> >>> >>> >>> > > > ===== > Davanum Srinivas - http://xml.apache.org/~dims/ > > __________________________________________________ > Do you Yahoo!? > HotJobs - Search new jobs daily now > http://hotjobs.yahoo.com/ >