Javaアプリを介していくつかのxmlを変換しています。javax.xml.transform.Source で xml をロードします
Source src = new StreamSource(getXml());
xml が解析されると、DTD といくつかのエンティティを読み込もうとします。
<!DOCTYPE dmodule SYSTEM "http://mysecureserver/System/DTD/dmodule/proced.dtd"[
<!NOTATION SWF SYSTEM "">
<!NOTATION PNG SYSTEM "">
<!ENTITY % catalog PUBLIC "-//MyCompany//ENTITIES//EN "http://mysecureserver/catalog.pen">
%catalog;
]>
資格情報がないとファイル「catalog.pen」にアクセスできないため、ファイル IO エラーが発生します。認証情報を javax.xml.transform.Source に渡す方法はありますか?
また、xml を「所有」していないため、DTD 宣言を変更できません。読むしかない。