Как включить внешний Javascript в офлайн-приложение GWT

У меня есть приложение GWT (ну, GXT), которое использует внешнюю библиотеку JavaScript для добавления функциональности моему приложению. Мое приложение тоже должно работать офлайн, и в этом моя проблема.

Я знаю, что добавление файлов в общую папку сделает их доступными для моего приложения GWT, но это не сработает в случае использования в автономном режиме. GWT компилирует мое приложение, чтобы без проблем сделать его доступным в автономном режиме, но не включает внешнюю библиотеку JavaScript.

Итак, всякий раз, когда я работаю в приложении и достигаю точки, где требуется указанная библиотека, браузер будет пытаться выполнить запрос GET, потому что библиотека еще не загружена и надежно не остается в кеше браузера.

Есть ли способ добавить библиотеку в мое приложение, чтобы она была кэширована вместе с моим приложением GWT? Библиотека состоит из нескольких папок, файлов JS, изображений, CSS и т. Д. Моя единственная идея - динамически создать манифест Appcache, который выгружает ВСЕ файлы в кеш браузера ... в этом случае я боюсь нарушить автономную работу GWT.


person codemo    schedule 07.02.2013    source источник


Ответы (1)


Да, вы можете создать манифест во время компиляции. Просто используйте компоновщик, расширяющий com.google.gwt.core.ext.linker.AbstractLinker.

См., Например, этот пример компоновщика манифеста или см. Написание компоновщика GWT или просмотрите этот поток stackoverflow

Я делаю это, чтобы включить шрифты Google и создать манифест, который будет включать только файлы для этой конкретной языковой перестановки.

person user1258245    schedule 07.02.2013
comment
Спасибо! Линкер был именно тем, что я искал. Мне нужно было немного подправить мое приложение, чтобы все было включено, но, насколько я могу судить, оно работает нормально. - person codemo; 07.02.2013