SpiffyUI: помощь в настройке существующего проекта GWT; в частности, как именно найти spiffyui.min.js? - PullRequest
2 голосов
/ 22 января 2012

Я чувствую, как будто я здесь упускаю что-то очевидное.На странице Приступая к работе здесь http://www.spiffyui.org/?getStarted говорится, среди прочего:

  1. Добавление зависимости проекта Spiffy Вы можете автоматически загрузить Spiffy через сервер Nexus или загрузить вручную.JAR-файлы со страницы загрузки.,,,.

Хорошо, я просто использую Apache Ant так, как он был настроен генератором проектов GWT.Я загрузил два файла .jar и сказал файлу build.xml скопировать их в war / WEB-INF / lib при сборке.

(также с настройкой spiffyui.sdk вверху)

   <!-- Add any additional server libs that need to be copied -->
   <copy todir="war/WEB-INF/lib" file="${spiffyui.sdk}/spiffyui-0.7.8.jar" />
   <copy todir="war/WEB-INF/lib" file="${spiffyui.sdk}/spiffytasks-0.7.8.jar" />
  1. Ссылка Spiffy в вашем HTML Теперь файлы CSS и JavaScript включены в ваш проект при сборке.Следующим шагом является ссылка на них в вашем HTML-файле.Платформа Spiffy UI включает в себя множество файлов JavaScript и CSS, но все они объединены в два файла для более быстрой загрузки приложения.Ссылка на этот файл и библиотеку JQuery в разделе head ваших HTML-файлов выглядит следующим образом:
   <head>
   <script type="text/javascript" src="jquery.min.js"></script>
   <script type="text/javascript" src="spiffyui.min.js"></script>
   ...
   </head>

Хорошо, сделано.

  1. Импорт Spiffy в ваш модуль GWT Последний шаг - импорт модуля GWT платформы Spiffy UI.Добавьте следующую строку в файл модуля GWT:
   <inherits name="org.spiffyui.spiffyui" />

Хорошо, сделано

Это все, что нужно.

В самом деле?

Так что теперь я обслуживаю HTML-файл, который ссылается на spiffyui.min.js как локальный файл.Мне кажется, что я должен сказать своему веб-серверу обслужить этот файл.Я не мог понять, где я должен был получить этот файл, пока я не посмотрел в файлах .jar и не нашел org / spiffyui / public / js / spiffyui.js.Хм, ну, может быть, эти веб-контейнеры Java автоматически ищут файлы в библиотеках .jar и обслуживают их ??!Звучит странно, но все в порядке.

Я попытался запустить в режиме разработки, а затем вручную перешел по URL-адресу, который должно указывать свойство src тега script: http://127.0.0.1:8888/spiffyui.min.js result: 404 Not found

может быть, мне нужен специальный измененный URL для режима разработки ?: http://127.0.0.1:8888/spiffyui.min.js?gwt.codesvr=127.0.0.1:9997 результат: нет, 404 Не найдено

Что мне здесь не хватает?

Ответы [ 2 ]

1 голос
/ 23 января 2012

Волшебство, которое вам не хватает, - это компилятор GWT. Когда вы добавляете зависимость модуля в свой проект GWT для Spiffy UI, вы даете фреймворку шанс стать частью сложности ваших проектов. Частично это означает, что он скопирует файл spiffyui.min.js из файлов JAR и в тот же каталог в выходных данных вашего проекта, что и остальная часть кода GWT.

Как только файл скопирован, ссылка, которую вы добавили в HTML-файл, работает, потому что он может получить файл spiffyui.min.js с относительным URL-адресом. Как только JavaScript загружает Spiffy, пользовательский интерфейс может импортировать CSS и все остальное, что ему нужно для запуска платформы.

Надеюсь, это поможет, Zack

0 голосов
/ 08 июля 2012

По крайней мере при сборке с Maven расположение по умолчанию не будет корнем вашего веб-приложения.Вместо этого он будет помещен в ту же папку, где находится сценарий

имя_пакета / имя_пакета. nocache.js

.

Итак, поместив его взаголовок вашего HTML должен работать:

    <script src="package_name/jquery.min.js"></script>
    <script src="package_name/spiffyui.min.js"></script>
    <!-- This script loads your compiled module.   -->
    <!-- If you add any GWT meta tags, they must   -->
    <!-- be added before this line.                -->
    <!--                                           -->
    <script src="package_name/package_name.nocache.js"></script>

Кроме того, я создал два пустых файла (имя_пакета / jquery.min.js, имя_пакета / spiffyui.min.js) в папке webapp, чтобы отключить предупреждения отIDE.Они будут перезаписаны при копировании реальных файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...