yegor256
yegor256

Reputation: 105053

How to make Saxon XSLT processor report errors to stderr or log4j?

This is my code:

import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;

TransformerFactory factory = TransformerFactory.newInstance();
factory.setErrorListener(new MyErrorListener());
Transformer trans = factory.newTransformer(new StreamSource(new StringReader(xsl), sid));
t.setErrorListener(new MyErrorListener());
t.transform(new DOMSource(xml), result);

How can I modify this code to make Saxon 9 report errors to stderr? Now it keeps silent no matter what and only throws exceptions of type TransformerConfigurationException or TransformerException reporting very little to MyErrorListener.

Upvotes: 1

Views: 332

Answers (1)

Michael Kay
Michael Kay

Reputation: 163312

Are you talking about compile time errors or run time errors? For compile time errors (which are more common) you need to set the ErrorListener on the TransformerFactory, not on the transformer.

It would be best if you gave a specific example.

Upvotes: 1

Related Questions