1

Xercesを使用してxmlファイルをxsdスキーマファイルに対して検証しようとしています。解決できないエラーが発生しています。以下はlogcatの出力です。Javaアプリケーションで同じコードとxercesImpl.jarファイルを試してみると、正確な検証結果が得られますが、同じものをandroidに移動するとエラーが発生することに注意してください。ご意見をお聞かせください。

E/AndroidRuntime(792): java.lang.NoClassDefFoundError: org.apache.xerces.parsers.SAXParser

ありがとう..

4

2 に答える 2

2

解決策は、Android に移植された Apache Xerces を使用することです。ここにプロジェクトがあります

Android プロジェクトでライブラリとして使用するには、svn chekout を実行し、プロジェクトを jar ファイルにエクスポートする必要があります。

SchemaFactory をインスタンス化するコードは少し変更されています。例を示します。

import mf.javax.xml.validation.Schema;
import mf.javax.xml.validation.SchemaFactory;
import mf.javax.xml.validation.Validator;
import mf.org.apache.xerces.jaxp.validation.XMLSchemaFactory;

SchemaFactory  factory = new XMLSchemaFactory();
Schema esquema = factory.newSchema(".../file.xsd");
于 2013-01-28T20:01:03.203 に答える
0

問題は、Androidにはxercesと検証インターフェースがないことです=)しかし、xerceから検証を追加するだけです:

adnroid で xerces とネイティブ スキーマ検証 (java) を使用できます。xerces ソースをダウンロードし、(いくつかの簡単な操作の後) それを独自のコードに含める必要があります。DocumentBuilderFactory.setShema メソッドを使用できます。

https://stackoverflow.com/questions/13142567/xml-schema-validation-xmlsignature-with-xerces-in-android

于 2012-10-30T15:55:06.933 に答える