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 全体が正しく表示されないことがあります。メモリ内でできることはすべてアンマーシャリングし、手動で検証を行いたいと思います。