URLConnection を使用して http 接続経由で画像をロードするアプレットがあります。すべての接続に対して setUseCaches(true) を設定していますが、まだキャッシュ動作が見られません。私のイメージの HTTP ヘッダーには適切なキャッシュ設定があります。バグ 4528599を見ると、かなり不可解なステートメントがあります。
Java Plug-In の現在のバージョン (1.3.1) は、名前が .jar または .class で終わるファイルのブラウザ キャッシュのみをチェックします。Java Plug-In 1.4 では、ブラウザのキャッシュで、.class、.jar、.zip、.jpg、.gif、.wav、.au のファイル タイプがチェックされると聞いています。
もちろん、これは 1.6 では FIXED とマークされていましたが、1.6 未満でもキャッシュは見られません。私の画像は PNG ファイルで、実際には .png 拡張子で終わらない場合があります。キャッシュが表示されません。
バグ修正レポートは 1.6 統合ダウンロード エンジンについて述べていますが、Google はそれについてあまり知らないようです。
これは機能するはずですか、それとも壊れた Sun の「機能」の 1 つにすぎませんか。アプレットにブラウザのキャッシュから PNG 画像をロードさせる方法または回避策はありますか? 私は自分自身を実装したくない....
更新: キャッシングはResponseCache実装に関連付けられているようです。その仕組みの詳細については、このテクニカルノートを参照してください。最後の行は次のように述べています。
Java 2 Standard Edition には、URLConnection キャッシングのデフォルト実装はありません。ただし、Java Plugin と Java WebStart はすぐに使用できるものを提供します。
したがって、問題は次のようになるように思えます。Java プラグインの ResponseCache 実装は実際にどのように機能するのでしょうか。v1.4/v1.5/v.16 の違いは何ですか?
誰でもアイデアはありますか?