Xerces は、次のように XML カタログのサポートをリーダーに追加できると主張しています。
XMLCatalogResolver resolver = new XMLCatalogResolver();
resolver.setPreferPublic(true);
resolver.setCatalogList(catalogs);
XMLReader reader = XMLReaderFactory.createXMLReader(
"org.apache.xerces.parsers.SAXParser");
reader.setProperty("http://apache.org/xml/properties/internal/entity-resolver",
resolver);
しかし、これを行うとすぐ<xs:include/>
に、スキーマ内のタグは処理されなくなります。が追加されると、エンティティ解決のための唯一の場所になるように思われるXMLCatalogResolver
ため、インクルードは機能しなくなります。Eclipse OTOH は同じカタログを使用して正常に検証するため、可能性があるはずです。
これを回避する方法はありますか、またはカタログをサポートする他の Java ベースのバリデーターはありますか?
ありがとう、ドミニク。