JSF에서 리소스로드 순서를 올바르게 지정할 수 없습니다. 특히 정점도 사용할 때 특히 그렇습니다. 나는 내가 포함 할 필요가있는 다수의 스타일 시트를 가지고있다. 모든 것들은 프라임 머티리얼 리소스 뒤에로드되어야한다.JSF에서 리소스로드 순서 관리
나는이 있습니다
<h:outputStylesheet library="mw.static" name="css/prime.css"/>
<h:outputStylesheet library="mw.static" name="css/main.css"/>
다음과 같이 HTML의 결과는 다음과 같습니다
<link href="/static/css/prime.css?rv=1396621461" rel="stylesheet" type="text/css"></link>
<link href="/static/css/main.css?rv=1396621461" rel="stylesheet" type="text/css"></link>
<link href="/javax.faces.resource/primefaces.css.xhtml?ln=primefaces&rv=1396621461" rel="stylesheet" type="text/css"></link>
<script src="/javax.faces.resource/jquery/jquery.js.xhtml?ln=primefaces&rv=1396621461" type="text/javascript"></script>
<script src="/javax.faces.resource/primefaces.js.xhtml?ln=primefaces&rv=1396621461" type="text/javascript"></script>
<script src="/javax.faces.resource/jquery/jquery-plugins.js.xhtml?ln=primefaces&rv=1396621461" type="text/javascript"></script>
<link href="/javax.faces.resource/charts/charts.css.xhtml?ln=primefaces&rv=1396621461" rel="stylesheet" type="text/css"></link>
<script src="/javax.faces.resource/charts/charts.js.xhtml?ln=primefaces&rv=1396621461" type="text/javascript"></script>
알 수있는 바와 같이
, 내 자신의 스타일 시트의 순서가 존중되고, prime.css가 전에 포함되어 있습니다로 main.css. 그러나, 나는 primefaces CSS 파일 후 둘 다 필요합니다.일반적으로 HeadRendered가 먼저 primefaces css 파일을 작성한 다음 css 파일을 작성한 다음 primefaces js를 작성한 다음 추가 스크립트를 작성하는 것이 가장 좋습니다. 이것은 Google의 페이지 속도 권장 사항을 준수하고 내 CSS 종속성 문제를 해결할 것입니다. prime.css와 main.css가이 primefaces 자원 뒤에 지금 참으로있는 동안, 그러나
<f:facet name="last">
<h:outputStylesheet library="mw.static" name="css/prime.css"/>
<h:outputStylesheet library="mw.static" name="css/main.css"/>
<!--[if lte IE 8]>
<link rel="stylesheet" href="${path.styleSheet}-ie.css" type="text/css" />
<![endif]-->
<ui:insert name="css"/>
</f:facet>
:
여기서 할 수있는 분명한 것은 몸으로이 배치, 패싯 마지막 방법을 사용하는 것이 었습니다 내 ui : insert 태그 (즉, 페이지 자체에 넣어야하는 일부 CSS를 삽입 함)는 즉 특정 스타일 시트와 함께 건너 뜁니다. 그래서 여기도 해결책이 없습니다.
여러분 중 누군가가 문제를 해결할 수 있는지 궁금합니다. HeadRenderer
primefaces 구현을 살펴 봤지만이 작업을 수행하는 간단한 방법은 없습니다 (특히 CSS 파일의 순서를 변경하지 않아야 함).
JSF에서'h : head'의 순서로'head'를 사용하는 것은 권장하지 않습니다 : http://stackoverflow.com/a/6044008/1199132 –
글쎄, 나는 CSS 파일을 포함하는 다른 방법을 모른다. 'h : head'없이 html로 마지막으로 추가 된 파일이됩니다. – Will