1

Java6、Struts2.2.3.1 - バイト配列を画像 (jpg) に変換しています。以下のリンクを参照してください。これを IE で開いた場合、画像は完全ではありませんが、Firefox または Chrome では正常に開きます。

http://jsbin.com/ahely/2

Java
バイト配列をエンコードし、MiGBase64 を使用して文字列に変換します。ここで、this.bean.imageByteArrayString はフォーム Bean を参照します。

this.bean.setImageByteArrayString(new Base64().encodeToString(imageInByteArr, false));

JSP

<img src="data:image/jpg;base64,<c:out value='${bean.imageByteArrayString}'/>" />

これがIE8で機能しない理由がわかりません。

4

1 に答える 1

3

IE8 では、データ URI スキームに 32KB の制限があります。この件に関するウィキペディアの記事も参照してください。

代わりに通常の URL を生成し、画像を提供するサーブレットを用意するか、画像が実際に Web サーバーのディスク ファイル システムに既に配置されている場合は、別の Web アプリケーション コンテキストを作成して、URL で直接参照できるようにすることをお勧めします。

于 2012-05-14T01:35:41.697 に答える