Удаленные JS-файлы, указанные как зависимости портлетов в gatein-resources.xml, не работают

Я хочу использовать http://maps.google.com/maps/api/js в портлете с именем Banner

для этого в gatein-resources.xml я объявил его как общий ресурс с именем googlemap и добавил googlemap в качестве зависимостей портлета Banner

<scripts>
    <name>googlemap</name>
    <url>http://maps.google.com/maps/api/js</url>
</scripts> 



<portlet>
    <name>
        Banner
     </name>
    <scripts>
        <depends>
            <scripts>googlemap</scripts>
        </depends>
    </scripts>
</portlet> 

Но при загрузке баннера карта портлета не отображается.

Если я объявляю http://maps.google.com/maps/api/js файл внутри тега скрипта в
Файл jsp, используемый в портлете Banner, показывает карта Google.

Кто-нибудь может объяснить, почему googlemap js не загружается при объявлении его в gatein-resources.xml.
Все остальные скрипты находятся в самой локальной системе, заявленные в gateing-resources работают нормально.

1 ответ

Во-первых, в объявлении вашего модуля может быть ошибка, так как объявление модуля не помещается в объявление gstrein-resources xsd schmea. Это должно быть что-то вроде следующего:

<portlet>
  <name>Banner</name>
  <module>
    <depends>
      <module>googlemap</module>
    </depends>
  </module>
</portlet>

<module>
  <name>googlemap</name>
  <script>
    <path>/path/to/your/js/file.js</path>
  </script>
</module>

Между тем, вы должны знать, что механизм AMD (Asynchrounous defenition) GateIn не обеспечивает поддержку файлов Content Delevery Network (CDN), и вы должны указать путь, ссылающийся на локальный файл в архиве вашего веб-приложения, а не на удаленный.,

Насколько я знаю, люди из GateIn планировали работать над поддержкой файлов пути CDN в следующем выпуске.

Другие вопросы по тегам