【问题标题】:setPropertyActionListener is not passing the right valuesetPropertyActionListener 没有传递正确的值
【发布时间】:2012-09-30 09:14:33
【问题描述】:

我有一个编辑器组件,它显示选定的族(来自树)描述

所以在编辑后用户点击保存按钮我想使用这个

 <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>  

【问题讨论】:

标签: jsf


【解决方案1】:

由该标签创建和安装的 ActionListener 实例具有以下行为和契约。 仅在第一次创建此标签的组件时创建和注册 ActionListener 实例。

所以尝试使用 action 属性而不是 actionListener :

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-20
    • 2018-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    • 2016-03-23
    相关资源
    最近更新 更多