Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 92713 invoked by uid 500); 2 Apr 2001 18:30:07 -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 92541 invoked from network); 2 Apr 2001 18:30:04 -0000 Received: from e1.ny.us.ibm.com (32.97.182.101) by h31.sny.collab.net with SMTP; 2 Apr 2001 18:30:04 -0000 Received: from northrelay02.pok.ibm.com (northrelay02.pok.ibm.com [9.117.200.22]) by e1.ny.us.ibm.com (8.9.3/8.9.3) with ESMTP id OAA10830 for ; Mon, 2 Apr 2001 14:28:45 -0400 Received: from d01ml244.pok.ibm.com (d01ml244.pok.ibm.com [9.117.200.44]) by northrelay02.pok.ibm.com (8.8.8m3/NCO v4.95) with ESMTP id OAA152272 for ; Mon, 2 Apr 2001 14:25:36 -0400 Importance: Normal Subject: Re: cvs commit: xml-axis/java/src/org/apache/axis/utils XMLUtils.java To: axis-dev@xml.apache.org X-Mailer: Lotus Notes Release 5.0.3 (Intl) 21 March 2000 Message-ID: From: "Matthew Duftler" Date: Mon, 2 Apr 2001 14:30:00 -0400 X-MIMETrack: Serialize by Router on D01ML244/01/M/IBM(Release 5.0.6a |January 17, 2001) at 04/02/2001 02:30:02 PM MIME-Version: 1.0 Content-type: text/plain; charset=us-ascii X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N Hi Doug, I don't know what the standardized way to serialize a org.w3c.dom.Document is. There probably is a way, but I'm not sure what it is. I briefly looked through the JAXP spec to see if I could find a clue, but I didn't see anything. I did notice, however, that they explicitly say that DocumentBuilder is not expected to be thread-safe, so holding on to one instance may not be the best idea. Thanks, -Matt Doug Davis/Raleigh/IBM@IBMUS on 04/02/2001 02:17:43 PM Please respond to axis-dev@xml.apache.org To: axis-dev@xml.apache.org cc: Subject: Re: cvs commit: xml-axis/java/src/org/apache/axis/utils XMLUtils.java Thanks for asking - I forgot to post a message about the entire JAXP changes. Can someone who actually understands all of this makes sure I did it correctly? And in particular what is the proper class I should have used there? -Dug Matthew Duftler/Watson/IBM@IBMUS on 04/02/2001 02:15:12 PM Please respond to axis-dev@xml.apache.org To: axis-dev@xml.apache.org cc: Subject: Re: cvs commit: xml-axis/java/src/org/apache/axis/utils XMLUtils.java Hi Doug, Doesn't the use of org.apache.xml.serialize.XMLSerializer force Xerces to be present? Even if a user exploits your usage of JAXP to use a different parser library (for parsing), they will now be forced to have Xerces present also. Is XMLSerializer a standardized thing that I'm unfamiliar with? Thanks, -Matt dug@apache.org on 03/31/2001 05:24:08 PM Please respond to axis-dev@xml.apache.org To: xml-axis-cvs@apache.org cc: Subject: cvs commit: xml-axis/java/src/org/apache/axis/utils XMLUtils.java dug 01/03/31 14:24:08 Added: java/src/org/apache/axis/utils XMLUtils.java Log: Opps - forgot to add the file Revision Changes Path 1.1 xml-axis/java/src/org/apache/axis/utils/XMLUtils.java Index: XMLUtils.java =================================================================== /* * The Apache Software License, Version 1.1 * * * Copyright (c) 1999 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. The end-user documentation included with the redistribution, * if any, must include the following acknowledgment: * "This product includes software developed by the * Apache Software Foundation (http://www.apache.org/)." * Alternately, this acknowledgment may appear in the software itself, * if and wherever such third-party acknowledgments normally appear. * * 4. The names "Axis" and "Apache Software Foundation" must * not be used to endorse or promote products derived from this * software without prior written permission. For written * permission, please contact apache@apache.org. * * 5. Products derived from this software may not be called "Apache", * nor may "Apache" appear in their name, without prior written * permission of the Apache Software Foundation. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * ==================================================================== * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation. For more * information on the Apache Software Foundation, please see * . */ package org.apache.axis.utils ; import java.io.* ; import org.w3c.dom.* ; import javax.xml.parsers.* ; import org.apache.xml.serialize.* ; import org.xml.sax.* ; public class XMLUtils { private static DocumentBuilder db ; private static DocumentBuilderFactory dbf = init(); public static DocumentBuilderFactory init() { Document doc = null ; try { dbf = DocumentBuilderFactory.newInstance(); dbf.setNamespaceAware(true); db = dbf.newDocumentBuilder(); } catch( Exception e ) { e.printStackTrace(); } return( dbf ); } public static Document newDocument() { return( db.newDocument() ); } public static Document newDocument(InputSource inp) { try { return( db.parse( inp ) ); } catch( Exception e ) { e.printStackTrace(); return( null ); } } public static Document newDocument(InputStream inp) { try { return( db.parse( inp ) ); } catch( Exception e ) { e.printStackTrace(); return( null ); } } public static Document newDocument(String uri) { try { return( db.parse( uri ) ); } catch( Exception e ) { e.printStackTrace(); return( null ); } } public static String DocumentToString(Document doc) { try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); XMLSerializer xs = new XMLSerializer( baos, new OutputFormat() ); xs.serialize( (Document) doc ); baos.close(); return( baos.toString() ); } catch( Exception e ) { e.printStackTrace(); } return( null ); } public static void DocumentToStream(Document doc, OutputStream out) { try { XMLSerializer xs = new XMLSerializer( out, new OutputFormat() ); xs.serialize( (Document) doc ); } catch( Exception e ) { e.printStackTrace(); } } }