0

JiBX を使用して巨大な XML ファイルをアンマーシャリングしたいのですが、XSD に対して検証したくありません。どうすればいいですか?

概念実証 (XSD に準拠した XML で機能する jUnit スニペット):

IBindingFactory bfact = BindingDirectory.getFactory(Customer.class);
IUnmarshallingContext uctx = bfact.createUnmarshallingContext();
Customer customer = (Customer) uctx.unmarshalDocument(new FileInputStream(fileLocation), null);

なぜこれが必要なのですか?ユーザーが巨大な XML ファイルをアップロードできるようにする RESTful サービスがあります。Castor はこの仕事には遅すぎることが判明したため、現在、JiBX で書き直しています。ただし、ユーザーは 99.9% 処理可能なファイルをアップロードすることがありますが、要素に追加の XML 属性が 1 つあると、XML 全体が正しく表示されないことがあります。メモリ内でできることはすべてアンマーシャリングし、手動で検証を行いたいと思います。

4

1 に答える 1

0

ポマリオ
やりたいことができる。githubからソース コードをダウンロードし、いくつかの xml ファイルに対してテストすることをお勧めします。モデルにない XML 要素と属性について JiBX が文句を言う場合は、ソース コードでエラーを見つけて、エラーをスローするのではなく、不適切な XML データを無視するようにコードを変更します。
頑張りすぎなくていいです。
幸運を!
ドン

于 2012-06-08T16:02:45.860 に答える