1

1 つの列にネストされたラジオ選択ボタンがある次のツリーテーブルがあります。Primefaces Ajax タグは、値の変更時に部分的な送信を行います。

<p:treeTable value="#{carBean.partsTree}" var="document" id="multiSelect"
             selection="#{carBean.selectedNodes}" selectionMode="single"  >

    <p:column style="width:150px" styleClass="column1asd">
        <f:facet name="header">
            DealerShip                     
        </f:facet>
        <h:outputText value="#{document.name}" />
    </p:column>

    <p:column style="width:100px;text-align: center  ">
        <f:facet name="header">
            Car Types
        </f:facet> 
        <h:outputText value="#{document.numCarTypes}" />
    </p:column>

    <p:column style="width:100px;text-align: center">
        <f:facet name="header">
            Contacts
        </f:facet>
        <h:outputText value="#{document.contactName}" />
    </p:column>

    <p:column style="width:100px;text-align: center">
        <f:facet name="header">
            Contact Emails
        </f:facet>
        <h:outputText value="#{document.dealerShipContactEmail}" />
    </p:column>


<p:column style="width:100px">
        <f:facet name="header">
                Retail | Commercial | Distribution  
        </f:facet>

    <p:selectOneRadio value="#{document.selectedContactOption}"  >
                <f:selectItem itemValue="Retail"   itemLabel="" style="margin-left:"/> 
                <f:selectItem itemValue="Commercial"  itemLabel="" />
                <f:selectItem itemValue="Distribution"   itemLabel=""    />
                <p:ajax update=":moreLikeThis:count"   process="@all"  listener="#{dealerShipSelectionBean.updateDetailEvent(e)}" />
            </p:selectOneRadio>
</p:column>


    </p:treeTable>

仮説データ ビュー:

Level
R    1    2
|
|    a
-----
|   |
|   |   aa
|   -----
|   |   ab
|   -----
|  
|   b
-----
|   |
|   |   ba
|   -----
|   |   bb
|   -----
|   |   bc
|   -----
|   |   bd
|   -----
|   |   be
|   -----

問題

バッキング Bean メソッドの dealShipSelectionBean.updateDetailEvent(e) への Ajax 呼び出しが、すべてのレベル 1 ツリー ノードのラジオ ボタンで正しく行われます。

バッキング Bean メソッドの dealShipSelectionBean.updateDetailEvent(e) への Ajax 呼び出しは、最初のレベル 2 ツリー ノードのラジオ ボタンで正しく行われます。以前にそのサブツリーからツリーノードが選択された他の第 2 レベルのツリーノードラジオボタンを選択すると、同じ (正しい?) ajax リクエストが起動されますが、バッキング Bean メソッドの DealerShipSelectionBean.updateDetailEvent(e) に​​は割り込まれません。

たとえば
、select ba - バッキング Bean メソッド .updateDetailEvent(e) への Ajax 呼び出しが正しく行われ
ます select bb - Ajax 呼び出しが行われましたが、バッキング Bean メソッド .updateDetailEvent(e) が呼び出されません。
select ab - バッキング Bean メソッドへの Ajax 呼び出し .updateDetailEvent(e) が正しく行われ
ます select a - バッキング Bean メソッドへの Ajax 呼び出し .updateDetailEvent(e) が正しく行わ
れます正しく
選択 b - バッキング Bean メソッド .updateDetailEvent(e) への Ajax 呼び出しが行われます 正しく
選択 ab - Ajax 呼び出しが行われましたが、バッキング Bean メソッド .updateDetailEvent(e) は呼び出されません。
select bc - Ajax 呼び出しが行われましたが、バッキング Bean メソッド .updateDetailEvent(e) が呼び出されません。

どんな助けでも大歓迎です。

primefaces 3.6-SNAPSHOT mojoraa 2.1.18 tomcat 7

4

0 に答える 0