0

選択したファミリ (ツリーから) の説明を表示するエディタ コンポーネントがあります。

それを編集した後、ユーザーはそこにある保存ボタンをクリックします

 <f:setPropertyActionListener  target="#
            {projectTestManagementMB.selectedNodeDescription}" 
             value="projectTestManagementMB.selectedFamily.description" />

説明の新しい値をこの変数 selectedNodeDescription に渡します。しかし、チェックすると、新しい値ではなく古い値が含まれていることがわかりましたprojectTestManagementMB.selectedFamily.description

コードは次のとおりです。

<p:editor id="familyDescriptionEditor" value="#
     {projectTestManagementMB.selectedFamily.description}" width="600"/>  

      <p:commandButton id="submitButton" value="Save"   icon="ui-icon-disk"  
       actionListener="#{projectTestManagementMB.saveDescription}">
          <f:setPropertyActionListener  target="#
            {projectTestManagementMB.selectedNodeDescription}" 
             value="projectTestManagementMB.selectedFamily.description" />

      </p:commandButton>  
4

1 に答える 1

1

このタグによって作成およびインストールされる ActionListener インスタンスには、次の動作と規約があります。このタグのコンポーネントを初めて作成するときにだけ、ActionListener インスタンスを作成して登録します。

したがって、 actionListener の代わりに action 属性を使用してみてください。

   <p:commandButton id="submitButton" value="Save"   icon="ui-icon-disk"  action="#   
        {projectTestManagementMB.saveDescription}" >
          <f:setPropertyActionListener  target="#
         {projectTestManagementMB.selectedNodeDescription}" value="#
          {projectTestManagementMB.selectedFamily.description}" />
    </p:commandButton>  
于 2012-09-30T09:43:33.637 に答える