jaxbを使用して作成されたxmlファイルがあります。xsdドキュメントに対して検証する必要があります。マーシャリングを解除せずに検証を行うことは可能ですか?次に、xmlファイルにエラーを出力する必要があります。
質問する
10866 次
1 に答える
12
はい、1.5以降のJavaにあるバリデーターを使用できます。これがリファレンスドキュメントです
それとは別に、domベースまたはストリームベースのAPIを使用して、XMLドキュメントをxsdファイルに対して検証できます。タスクにSAXAPIを使用したい場合は、次の例を聞いてください。
try {
String schemaLang = "http://www.w3.org/2001/XMLSchema";
SchemaFactory factory = SchemaFactory.newInstance(schemaLang);
Schema schema = factory.newSchema(new StreamSource("sample.xsd"));
Validator validator = schema.newValidator();
validator.validate(new StreamSource("test.xml"));
} catch (SAXException e) {
System.out.println(" sax exception :" + e.getMessage());
} catch (Exception ex) {
System.out.println("excep :" + ex.getMessage());
}
それ以外の場合は、DOM、DOM4J、またはXOMAPIを使用できます。詳細については、こちらをご覧ください。
stackoverflowにも関連する答えがあります。
于 2012-06-08T12:37:48.640 に答える