0

Primefaces3.4.1の使用方法の例に取り組んでいますp:TabMenu

メインページ:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"    
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:c="http://java.sun.com/jsp/jstl/core">
    <h:head>

    </h:head>
    <h:body>

        <div id="settingsHashMapz" class="settingsHashMap" style="width:1150px; height:400px; position:absolute; top:20px; left:1px">

            <p:tabMenu id="tabs" activeIndex="0" >  
                <p:menuitem value="tab1" url="/tab1.jsf" />  
                <p:menuitem value="tab2" url="/tab2.jsf" />  
                <p:menuitem value="tab3" url="/tab3.jsf" />

            </p:tabMenu>  
        </div>   
    </h:body>
</html>

タブ1ページ:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"    
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:c="http://java.sun.com/jsp/jstl/core">
    <h:head>

    </h:head>
    <h:body>
        <ui:composition>
            <h:panelGroup>
                <h:form id="tab1" >
                    ................. 
                </h:form>         
            </h:panelGroup>
        </ui:composition>
    </h:body>
</html>

を使おうとすると問題が発生しましたp:tabMenu。ちゃんと使えませんui:composition。メインのJSFページの名前空間を使用できないため、すべてのタブページで名前空間を宣言する必要があります。すべての名前空間をタブページに宣言した場合、サーバーからJavascriptライブラリを転送するために最大3秒待つ必要があります。ご覧のとおり、これはリソースの浪費です。

GET http://server:8080/DCProfileTabGenerators.jsf 200 OK 29ms                              jquery....min.js (line 4)
GET http://server:8080/javax.f...uery/jquery.js.jsf?ln=primefaces&_=1349526707969 200 OK 11ms   jquery....min.js (line 4)
GET http://server:8080/javax.f.../primefaces.js.jsf?ln=primefaces&_=1349526708568 200 OK 8ms   jquery....min.js (line 4)
GET http://server:8080/javax.f...source/jsf.js.jsf?ln=javax.faces&_=1349526708949 200 OK 8ms   jquery....min.js (line 4)
GET http://server:8080/resources/js/tabs.js?_=1349526709016 200 OK 10ms

メインのJSFページで宣言された名前空間をタブのJSFページに使用するにはどうすればよいですか?

4

1 に答える 1

2

ページの上部で名前空間を宣言しても、実際のパフォーマンスが低下することはありません。特定のページ ファイルで使用する名前空間を宣言するだけです。本質的に、これを行う実際の方法はありませんが、必須ではありません。

以下の GET リクエストは、必要な JavaScript ライブラリ、スタイルシート、および画像をクライアントにダウンロードするためのものです。クライアント ブラウザーの設定によっては、最初の要求の後にこれらをキャッシュする必要があります。これにより、このクライアントは、アプリケーション全体でページを移動する際に複数回ダウンロードする必要がなくなります。

于 2012-10-07T13:35:26.437 に答える