据我了解,JSF 2资源的需求是帮助组织资源目录,并添加一些版本控制和本地化。
但是可以将此功能与CDN结合使用吗?我以前从未使用过CDN,但它看起来不错,并希望听到你对它的看法以及与JSF 2资源的可能组合,尽管我认为不太可能。
答案 0 :(得分:8)
<h:outputScript>
和<h:outputStylesheet>
无法做到这一点,因为它们只能指向webapp自己的资源,而不能指向外部URL。这个功能已经被JSF人员要求了。另见JSF spec issue 598。现在它的预定为2.2,但我不认为它已经实施,因为它目前为0票。
在此之前,您需要使用<link>
中的纯HTML <script>
和<h:head>
自行指定。如果需要,您可以将其设置为模板定义,当您希望基于每个视图定义它们时。
<h:head>
...
<ui:insert name="resources" />
</h:head>
和
<ui:define name="resources">
<link rel="stylesheet" type="text/css" src="http://.../foo.css" />
<script type="text/javascript" src="http://.../foo.js"></script>
</ui:define>
更新 JSF实用程序库OmniFaces从版本1.2开始CDNResourceHandler
可用,可用于在生产阶段运行时通过CDN资源自动替换JSF资源。另请参阅the CDNResourceHandler
showcase page。