public static String getTextOf(String xsl) throws Exception {
DocXHandler docxh1 = new DocXHandler(ACE.getInputFilePath());
InputStream inputDocumentXMLStream = docxh1.getInputDocumentXMLZERO();
return new Cache().getXSLOutput(inputDocumentXMLStream, xsl);
}
上記のメソッドは、異なるxsl引数を使用して100回以上呼び出されます。これで、InputStream inputDocumentXMLStreamに値が割り当てられるたびに(ええ、100回以上)。このコードをリファクタリングしようとしているので、InputStreamに値が割り当てられるのは1回だけです。私のコードは今このようになりました。
public static String getTextOf(String xsl) throws Exception {
return new Cache().getXSLOutput(inputDocumentXMLStream, xsl);
}
inputDocumentXMLStreamをグローバルプロパティとして変更します。初めて正しい結果が得られましたが、2回目は以下のエラーが発生しました。
Unexpected end of ZLIB input stream
もう一度読む方法を教えてください。