Primefaces 键盘组件未在后端设置值

Primefaces keyboard component doesn't set value in backend

我正在使用 primefaces 键盘在应用程序中搜索一些文章。我的问题是我有一个 commandButton,它转到执行搜索的托管 bean 中的一个方法。当到达托管 bean 时,分配给键盘组件的字符串为空。

这是 jsf 文件中带有组件的部分

<h:panelGroup id="ric_tastiera" layout="block"
        style="display:none; overflow:hidden; height:180px;">
            <p:keyboard id="qwerty" value="#{dpDisponibilita2.pressed_letter}" layout="qwertyBasic" />
            <p:commandButton action="#{dpDisponibilita2.caricaArticoliDaLettera}" value="Search" ajax="true" />
</h:panelGroup>

我遗漏了什么或做错了什么?

提前致谢

每个动作都应包含在 <h:form> 中以触发该动作。如果没有封闭的 h:form.

,动作将不会触发

最好用h:form标签覆盖整个页面。您应该避免使用嵌套表单。

另见

commandLink/commandButton/ajax backing bean action/listener method not invoked