[Home] [By Thread] [By Date] [Recent Entries]
Hi Michael, George, and Jeff,
Thank you so much for all your prompt and helpful responses! This
quickly got me looking in the right direction.
The problem, as Michael suspected, was that I was not using the
SchemaFactory classe that I expected on both systems. The Xerces
classes were set in the classpath correctly. However, I was not
setting the schema factory system property in the same way that I was
doing for the DOM implementation registry and the document builder
factory. So on Windows I was getting the correct class:
org.apache.xerces.jaxp.validation.XMLSchemaFactory
But on Mac I was getting the class:
com.sun.org.apache.xerces.internal.jaxp.validation.xs.schemaFactoryImpl
The problem was solved by adding two lines of code before getting the
SchemaFactory instance:
String schemaFactoryProperty =
"javax.xml.validation.SchemaFactory:" +
XMLConstants.W3C_XML_SCHEMA_NS_URI;
System.setProperty(schemaFactoryProperty,
"org.apache.xerces.jaxp.validation.XMLSchemaFactory");
Thanks also for pointing out the bug in the use of xsi:schemaLocation.
I think that was a cut-and-paste error in my original email, but I'll
double-check to make sure we're not writing this out erroneously.
Best regards,
Michael Good
Recordare LLC
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |

Cart



