3

外部JavaScriptライブラリを使用してアプリに機能を追加するGWT(まあ、GXT)アプリケーションがあります。私のアプリケーションもオフラインで動作する必要があり、ここに私の問題があります。

パブリックフォルダーにファイルを追加すると、GWTアプリからファイルにアクセスできるようになることは承知していますが、オフラインで使用する場合は機能しません。GWTはアプリをコンパイルしてオフラインで問題なく利用できるようにしますが、外部JavaScriptライブラリは含まれていません。

そのため、アプリケーション内で作業して、上記のライブラリが必要になるポイントに到達すると、ライブラリがまだロードされておらず、ブラウザのキャッシュに確実に残っていないため、ブラウザはGETリクエストを試行します。

ライブラリをアプリに追加して、GWTアプリと一緒にキャッシュされるようにする方法はありますか?ライブラリは、いくつかのフォルダー、JSファイル、画像、CSSなどで構成されています。私の唯一のアイデアは、ブラウザーのキャッシュにすべてのファイルをダンプするAppcacheマニフェストを動的に作成することです。この場合、GWTオフライン機能を壊すのが怖いです。

4

1 に答える 1

3

はい、コンパイル時にマニフェストを生成できます。com.google.gwt.core.ext.linker.AbstractLinkerを拡張するリンカーを使用するだけです。

たとえば 、このマニフェストリンカーの例を参照する か、GWTリンカーの記述を参照するか、このスタックオーバーフロースレッド を参照してください。

これは、Googleフォントを含め、その特定の言語順列のファイルのみを含むマニフェストを作成するために行います。

于 2013-02-07T11:16:07.960 に答える