Jsf ice:选择InputDate-valueChangeListener属性在手动输入日期时不工作

Jsf ice:选择InputDate-valueChangeListener属性在手动输入日期时不工作,jsf,icefaces,valuechangelistener,Jsf,Icefaces,Valuechangelistener,当我尝试在使用ice:selectInputDate的标记中手动输入日期时,valueChangeListener属性不起作用。当我单击日历符号并选择日期时,valueChangeListener工作正常,我的调试被重定向到bean中的适当方法 是否有人建议如何使用valueChangeListener进行此ice:手动输入日期时选择InputDate。valueChangeListener不是必需的 <ice:selectInputDate id="d1" renderMonthAsDr

当我尝试在使用ice:selectInputDate的标记中手动输入日期时,valueChangeListener属性不起作用。当我单击日历符号并选择日期时,valueChangeListener工作正常,我的调试被重定向到bean中的适当方法


是否有人建议如何使用valueChangeListener进行此ice:手动输入日期时选择InputDate

valueChangeListener不是必需的

<ice:selectInputDate id="d1" renderMonthAsDropdown="true"
                     renderYearAsDropdown="true"
                     rendered="true"
                     renderAsPopup="true"
                     value="#{bean.myoDate}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/>
 </ice:selectInputDate>


确保面板/网格包含from

尝试使用ajax事件,如下所示

   <ice:selectInputDate id="d1" renderMonthAsDropdown="true"
                     renderYearAsDropdown="true"
                     valueChangeListener ="#{yourbean.yourValueChangeListener}"
                     rendered="true"
                     renderAsPopup="true"
                     value="#{bean.myoDate}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                    <ace:ajax event="dateTextChange" execute="@this" />
                    <ace:ajax event="dateSelect" execute="@this" />
  </ice:selectInputDate>


感谢您的快速回复。但我想避免感谢你的快速反应。但我想避免用户输入错误的日期,即、、文本而不是数字。我正在显示默认错误消息,但我想根据输入的文本和其他验证设置自定义错误消息。当我从日历弹出窗口中选择日期时,它工作正常。它不会与应用程序的其余部分同步。因此,这个解决方案最初本身就被取消了。