我想在名为Banner
的portlet中使用http://maps.google.com/maps/api/js在gatein-resources.xml中我已将其声明为名为googlemap的shaired资源,并将googlemap添加为Banner portlet的依赖项
<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>
但是没有显示加载Banner portlet地图。
如果我在Banner portlet中使用的星号标记中声明http://maps.google.com/maps/api/js文件,则会显示谷歌地图。
任何人都可以解释为什么googlemap js在gatein-resources.xml中声明它时没有加载。
所有其他脚本都驻留在本地系统中,在门控资源中声明的工作正常。
答案 0 :(得分:0)
首先,模块声明中可能存在错误,因为模块声明不适合 gatrein-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>
同时您应该知道GateIn的AMD(Asynchrounous模块防御)引擎不支持内容删除网络(CDN)文件,您必须提供引用本地文件的路径在您的webapp存档下,而不是远程存档。
据我所知,GateIn人员计划在即将发布的版本中支持CDN路径文件。