オープン JPA (websphere アプリケーション サーバー) を使用して、ファイルを db2 列に格納しています。JPA エンティティは次のようになります。
@Lob
@Nullable
private byte[] content;
apache fileupload を使用してデータベースにファイルを保存する
FileItem item = (FileItem) iterator.next();
byte[] fileData = item.get();
attachment.setContent(fileData);
manager.updateAttachments(attachment);
ファイルの取得:
ServletOutputStream op = response.getOutputStream();
byte buff[] = new byte[8192];
InputStream input = new FileInputStream(uploadedFile);
response.setHeader("Content-Length",String.valueOf(uploadedFile.length()));
response.setHeader("Content-Disposition", "attachment; filename=\""
+ uploadedFile.getName() + "\"");
int i = 0;
while ((i = input.read(buff)) > 0) {
op.write(buff, 0, i);
op.flush();
}
画像ファイルをアップロードしてみました。それを取得するとき、Firefox は次のエラーを表示します。
誰かが似たようなことをする例を指摘できますか?