Удаленные 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 в следующем выпуске.