[ http://issues.apache.org/jira/browse/XALANJ-111?page=all ]
Brian Minchau updated XALANJ-111:
---------------------------------
Version: 2.1.0
(was: Latest Development Code)
> Warning Event not being fired from Transformer when using invalid Encoding
> String
> ---------------------------------------------------------------------------------
>
> Key: XALANJ-111
> URL: http://issues.apache.org/jira/browse/XALANJ-111
> Project: XalanJ2
> Type: Bug
> Components: transformation, Xalan-interpretive
> Versions: 2.1.0
> Environment: Operating System: All
> Platform: PC
> Reporter: John Smith
> Assignee: Xalan Developers Mailing List
>
> I set the output encoding to an invalid encoding string. When I executed the
> Transformer.transform(...) method, I saw the Warning message in the System
> Console, but my class which implemented the ErrorListener interface did not
> receive any type of notification. The following code is only slightly
> modified
> from the Trace.java example supplied with XALAN.
> /*
> * 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 "XSLT4J" 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 [EMAIL PROTECTED]
> *
> * 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 and was
> * originally based on software copyright (c) 1999, Lotus
> * Development Corporation., http://www.lotus.com. For more
> * information on the Apache Software Foundation, please see
> * <http://www.apache.org/>.
> */
> // Imported TraX classes
> import javax.xml.transform.TransformerFactory;
> import javax.xml.transform.Transformer;
> import javax.xml.transform.stream.StreamSource;
> import javax.xml.transform.stream.StreamResult;
> import javax.xml.transform.TransformerException;
> import javax.xml.transform.TransformerConfigurationException;
> // Imported java classes
> import java.io.FileOutputStream;
> import java.io.FileNotFoundException;
> import java.io.IOException;
> import org.apache.xalan.trace.PrintTraceListener;
> import org.apache.xalan.trace.TraceManager;
> import org.apache.xalan.transformer.TransformerImpl;
> import javax.xml.transform.ErrorListener;
> /**
> * Use the TraX interface to perform a transformation in the simplest manner
> possible
> * (3 statements).
> */
> public class SimpleTransform
> {
> public static void main(String[] args) throws TransformerException,
> TransformerConfigurationException, FileNotFoundException, IOException
> {
> class errorListener implements ErrorListener {
> public void error(TransformerException exception)
> {
> System.out.println("error");
> }
> public void fatalError(TransformerException exception)
> {
> System.out.println("fatalError");
> }
> public void warning(TransformerException exception)
> {
> System.out.println("warning");
> }
> }
> errorListener el = new errorListener();
> java.io.FileWriter fw = new java.io.FileWriter("events.log");
> java.io.PrintWriter pw = new java.io.PrintWriter(fw, true);
> PrintTraceListener ptl = new PrintTraceListener(pw);
> ptl.m_traceElements = true;
> ptl.m_traceGeneration = true;
> ptl.m_traceSelection = true;
> ptl.m_traceTemplates = true;
>
> TransformerFactory tFactory = TransformerFactory.newInstance();
> tFactory.setErrorListener(el);
> // Use the TransformerFactory to instantiate a Transformer that will
> work with
> // the stylesheet you specify. This method call also processes the
> stylesheet
> // into a compiled Templates object.
> Transformer transformer = tFactory.newTransformer(new StreamSource
> ("birds.xsl"));
> TraceManager trMgr = ((TransformerImpl)transformer).getTraceManager();
> try {
> trMgr.addTraceListener(ptl);
> } catch (Exception e) {
> System.out.println("e=" + e);
> }
>
> // Use the Transformer to apply the associated Templates object to an
> XML document
> // (foo.xml) and write the output to a file (foo.out).
> transformer.setErrorListener(el);
> transformer.setOutputProperty("encoding", "UTF-8sdsdsd");
> transformer.transform(new StreamSource("birds.xml"), new StreamResult
> (new FileOutputStream("birds.out")));
>
> System.out.println("************* The result is in birds.out
> *************");
> }
> }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]