2012-04-18 2 views
7

(Primefaces with TwitterBootstrap)을 사용하고 싶습니다. 현재 예 : 드롭 다운 메뉴가 작동하지 않는 경우 p:dataTable이 존재합니다. 내가 알아 낸 것 그것은 (어떤 Primefaces 구성 요소없이) 작동하고 있음을 나는 h:head에서 다음 순서가있는 경우 :JSF h : 출력 스크립트 순서 지정 및 PrimeFaces jQuery

<h:head> 
    <h:outputScript library="js" name="bootstrap.js"/> 
    <h:outputScript library="primefaces" name="jquery/jquery.js"/> 
    ... 
</h:head> 

나는 드롭 다운 (bootstrap.js보다 먼저 jquery.js) 순서를 교체하는 경우 메뉴가 깨졌습니다. 내 문제는 렌더링 된 HTML 출력에서 ​​PrimeFaces 구성 요소를 사용하면 PrimeFaces (jquery.js 및 primefaces.js)에서 사용하는 스크립트는 항상 h:head의 수동 입력 전에 발생한다는 것입니다.

<script src="/javax.faces.resource/jquery/jquery.js.jsf?ln=primefaces"></script> 
<script src="/javax.faces.resource/primefaces.js.jsf?ln=primefaces"></script> 
<script src="/javax.faces.resource/bootstrap.js.jsf?ln=js"></script> 
어떻게 jquery.js 이전 bootstrap.js를 가져올 수 있습니다

?

답변

12

문제가 리소스의 포함 순서와 관련된 경우 PrimeFaces 팀의 다음 블로그 게시물을 살펴 봐야합니다.

h:head 요소 안에 first면을 정의 할 수 있습니다. 거기에 배치 된 요소는 PrimeFaces 자원 앞에로드됩니다.

<h:head> 
    <f:facet name="first"> 
     <h:outputScript library="js" name="bootstrap.js"/> 
    </f:facet> 
</h:head>