The new xercesImpl.jar with com.sun.org.apache packages has a broken
manifest. It is missing all of the necessary META-INF/services information.
As a result, crimson is being picked up as the default parser even when
xercesImpl is on the classpath:
public static void main(String[] args) {
System.setProperty("jaxp.debug", "1");
SAXParserFactory pf = SAXParserFactory.newInstance();
}
With the new JAXP version of xercesImpl on the classpath, this program displays:
JAXP: loaded from fallback value: org.apache.crimson.jaxp.SAXParserFactoryImpl
But when you put the original Apache version of xercesImpl on the classpath, you get:
JAXP: found META-INF/services/javax.xml.parsers.SAXParserFactory
JAXP: loaded from services: org.apache.xerces.jaxp.SAXParserFactoryImpl
###@###.### 2004-03-03
###@###.### 2004-03-04
I'm rolling this bug back because the new xalan jar seems to have the same
problem:
public static void main(String[] args) {
System.setProperty("jaxp.debug", "1");
SAXParserFactory pf = SAXParserFactory.newInstance();
System.out.println("");
TransformerFactory tf = TransformerFactory.newInstance();
}
displays:
JAXP: found META-INF/services/javax.xml.parsers.SAXParserFactory
JAXP: loaded from services: com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
JAXP: found META-INF/services/javax.xml.transform.TransformerFactory
JAXP: loaded from services: org.apache.xalan.processor.TransformerFactoryImpl
###@###.### 2004-03-05
manifest. It is missing all of the necessary META-INF/services information.
As a result, crimson is being picked up as the default parser even when
xercesImpl is on the classpath:
public static void main(String[] args) {
System.setProperty("jaxp.debug", "1");
SAXParserFactory pf = SAXParserFactory.newInstance();
}
With the new JAXP version of xercesImpl on the classpath, this program displays:
JAXP: loaded from fallback value: org.apache.crimson.jaxp.SAXParserFactoryImpl
But when you put the original Apache version of xercesImpl on the classpath, you get:
JAXP: found META-INF/services/javax.xml.parsers.SAXParserFactory
JAXP: loaded from services: org.apache.xerces.jaxp.SAXParserFactoryImpl
###@###.### 2004-03-03
###@###.### 2004-03-04
I'm rolling this bug back because the new xalan jar seems to have the same
problem:
public static void main(String[] args) {
System.setProperty("jaxp.debug", "1");
SAXParserFactory pf = SAXParserFactory.newInstance();
System.out.println("");
TransformerFactory tf = TransformerFactory.newInstance();
}
displays:
JAXP: found META-INF/services/javax.xml.parsers.SAXParserFactory
JAXP: loaded from services: com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
JAXP: found META-INF/services/javax.xml.transform.TransformerFactory
JAXP: loaded from services: org.apache.xalan.processor.TransformerFactoryImpl
###@###.### 2004-03-05