0
私はprimefacesを使用してイメージをアップロードし、それをトリミングしてから、最終イメージをgraphicImageに表示します。Primfaces graphicImageストリームがクローズされていない、ファイルがロックされている
プロセスは問題なく動作しますが、問題は、imageImageに表示する最終イメージを取得するときにストリームが閉じられず、ファイルがjava.exeによって保持されているためですユーザーがログアウトしたときなどにファイル/ディレクトリを削除します。これは単に一時ディレクトリであるためです。
これは私のStreamedContentのゲッターです:
public StreamedContent getGraphicCropped() {
try{
if (newImageName != null) {
File file2 = new File(pathCroppedImage);
InputStream input = new FileInputStream(file2);
graphicCropped = new DefaultStreamedContent(input);
showImageFinal = true;
}
} catch(Exception e){
e.printStackTrace();
}
return graphicCropped;
}
私はこのゲッターが複数回呼び出されたことを知っているので、私は、input.close();
その後、私は、ファイルを削除することができるよん、しかし、それが表示されていない場合ライフサイクルで