2012-04-03 10 views
1

Java-AppletベースのWebアプリケーションのいずれかでパフォーマンスが低下しました。そこで、アプレットの読み込みを改善するためのJNLPの概念を実装しました。 JNLPを1としてサーバでファイルが変更されてもJNLPファイルは常にキャッシュからダウンロードされます

JARファイルが最初にクライアントマシンにダウンロードされ、サーバ内のアプレットのバージョンがキャッシュにアプレットのバージョンと一致している場合、ローカル

キャッシュされます、アプレットは、サーバー側のJARバージョンに変更があった場合、キャッシュ内の古いJARが新しいJAR

でしかし、私たちに置き換えられますキャッシュ

からロードされます代わりにダウンロードされることはありませんアプリケーションでは、期待どおりに動作していません。私たちは、jnlpファイル自体がキャッシュから来ていることが分かりました。したがって、古いjarバージョンを含んでいます。

ブラウザが開いているときに毎回jnlpファイルを新しくダウンロードする必要はありますか? これを修正するための代替方法がありますか?

ご迷惑をおかけして申し訳ありません。ダウンロードするときは、お使いのブラウザですぐに期限切れにJNLPファイルを設定しようとすることができ

JNLPファイル

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.0+" codebase="" href="" version="2.0.0.0"> 
    <information> 
     <title>Active Viewer</title> 
     <vendor>Platts</vendor> 
     <offline-allowed/> 
    </information> 
    <resources> 
     <j2se version="1.6+" 
       href="http://java.sun.com/products/autodl/j2se"/> 
     <jar href="EWSApplet.jar" main="true" version="9.3.5.0" /> 
     <property name="jnlp.versionEnabled" value="true"/> 
    </resources> 
    <applet-desc name="EWSApplet" 
       main-class="com.mycompany.ew.applet.EWS_Config.EWS_Config.class" 
       width="1" 
       height="1"> 
    </applet-desc> 
    <update check="background" policy="always"/> 
</jnlp> 

答えて

2

、すなわち、それは、(通常はあなたが必要expirescache-controlno-cacheプラグマなどのように対応するヘッダーを設定しましたさまざまなブラウザすべてでいくつか)。

1

私はあなたが何らかの種類のWebサーバーからjnlpファイルをダウンロードするとしますか?はいの場合は、jnlpにリンクしているWebサイトに近づくべきです。おそらくfoobar.jnlp?version = xx.yy.zzのようなものを追加すると効果的です。 ?version = xx.yy.zzは、サーバーによってGETパラメータとして処理されるため(ファイル選択によって無視されます)、キャッシング中はブラウザによって無視されません。

ご挨拶

関連する問題