转换器在所有按钮点击时被调用

时间:2013-02-18 16:41:37

标签: jsf converter

我使用JSF 2.0和Primefaces 3.4.1

以下是我的要求

我有一个h:selectOneMenu来填充用户列表。用户是必填字段,我需要选择用户,然后单击“提交”按钮将用户传递给辅助bean。我在页面上还有其他按钮。我已经实现了一个自定义转换器,将选择转换为相应的用户对象模型。应该完成转换,并且只有在单击“提交”按钮时才应将所选用户提交给支持bean。

但是我的转换器“techLeadConverter”方法被调用所有按钮点击,甚至当我点击菜单项从页面导航时。

如何限制仅在“提交”按钮上调用转换器单击

以下是我的声明

XHTML页面

<h:selectOneMenu id="technicalLeads" 
    value="#{resourceMB.technicalLead}" 
    converter="#{techLeadConverter}"
    required="#{not empty param[assignResource.clientId]}"
    requiredMessage="#{bundle.TechLeadMandatory}">

   <f:selectItem itemLabel="Select Technical Lead" itemValue=""></f:selectItem>
   <f:selectItems value="#{resourceMB.technicalLeadList}" var="techLead"
      itemValue="#{techLead}"
      itemLabel="#{techLead.lastName}, #{techLead.firstName}">
   </f:selectItems>
</h:selectOneMenu>

1 个答案:

答案 0 :(得分:0)

将这些按钮放在不同的表格中。或者,更好的是,不要使用命令链接/按钮进行页面到页面导航,而是使用普通的香草链接/按钮。