struts 2
を開き、FileInputStream
画像を読み取り、jsp で表示するアクションがあります。
問題は、Struts が画像の取得を終了したときに、自動的に処理を行いFileInputStream
、close()
それまたはストリームが残されるopen
かどうかです。
struts 2
を開き、FileInputStream
画像を読み取り、jsp で表示するアクションがあります。
問題は、Struts が画像の取得を終了したときに、自動的に処理を行いFileInputStream
、close()
それまたはストリームが残されるopen
かどうかです。
結果は入力ストリームを閉じます。アクションが行うのは、ストリームを提供することだけです。アクションが戻ると、コードは入力ストリームを制御できなくなります。
関連するコードは にありorg.apache.struts2.dispatcher.StreamResult:doExecute
ます。
Struts2は、作業が完了すると、入力ストリームを閉じます。
これがソースコードへのリンクであり、ストリームを閉じるために注意が払われていることがよくわかります。
同じものからのコードスニペットは次のとおりです。
finally {
if (inputStream != null) inputStream.close();
if (oOutput != null) oOutput.close();
}
物事がどのように進行しているかを明確に理解できることを願っています。