Jsf 2 Ajax事件从不在<;p:inptText>;需要时=";“真的”;

Jsf 2 Ajax事件从不在<;p:inptText>;需要时=";“真的”;,jsf-2,primefaces,Jsf 2,Primefaces,当我使用以下命令时: Ajax事件永远不会被触发。 但是,如果我删除required=“true”,一切正常,事件就会触发 有人能告诉我如何将p:inputText与p:ajax和required=“true”结合使用吗?这可能是因为当您将焦点放在文本字段时,会发生一个ajax事件,该事件会发回页面上组件的视图状态 执行此操作时,它试图将文本字段的当前值设置为{backingBean.value},该值为空,从而引发ValidatorException。由于发生此验证错误,因此从未触发操作事

当我使用以下命令时:


Ajax事件永远不会被触发。 但是,如果我删除required=“true”,一切正常,事件就会触发


有人能告诉我如何将p:inputText与p:ajax和required=“true”结合使用吗?

这可能是因为当您将焦点放在文本字段时,会发生一个ajax事件,该事件会发回页面上组件的视图状态

执行此操作时,它试图将文本字段的当前值设置为
{backingBean.value}
,该值为空,从而引发ValidatorException。由于发生此验证错误,因此从未触发操作事件
{backingBean.something()}


尝试将属性
immediate=“true”
添加到
标记中,查看是否允许在验证阶段之前触发事件。

h:message
p:growl
添加到组件中以查看错误。我怀疑您有
验证错误
。在inputText中输入
immediate=true
,看看它是否解决了这个问题。