当前位置: 首页 > 知识库问答 >
问题:

actionListener不工作jsf和primefaces

万楷
2023-03-14
<h:form id="formCreate">
                <p:dialog header="Crear" widgetVar="usuarioDlgCreate" resizable="false" id="usuDlgCreate"  
                          showEffect="fade" hideEffect="explode" modal="true">  

                    <h:panelGrid id="display" columns="2" cellpadding="4" style="margin:0 auto;">  

                        <h:outputText value="Rol:" />  
                        <p:inputText value="#{usuarioBean.usuarioSeleccionado.rolId}"/>  

                        <h:outputText value="Nombre:" />  
                        <p:inputText value="#{usuarioBean.usuarioSeleccionado.nomUsuario}"/>  


                        <h:outputText value="Email:" />  
                        <p:inputText value="#{usuarioBean.usuarioSeleccionado.email}" size="30"/>  

                        <f:facet name="footer">
                            <p:separator/>
                            <p:commandButton id="btnNewAccept" actionListener="#{usuarioBean.create(actionEvent)}" title="Guardar" value="Guardar"/>  
                            <p:commandButton id="btnNewCancel" oncomplete="usuarioDlgCreate.hide()" icon="ui-icon-new" title="Cancelar" value="Cancelar"/>  
                        </f:facet>
                    </h:panelGrid>  

                </p:dialog>  

            </h:form>
public void create(ActionEvent actionEvent) {
   UsuarioDao usuarioDao = new UsuarioDaoImplements();
   String msg = null;
   if(usuarioDao.create(this.usuarioSeleccionado)) {
       msg = "Información guardada correctamente";
   } else {
       msg = "No ha sido posible almacenar la información";
   }

    FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, msg, null);
    FacesContext.getCurrentInstance().addMessage(null, message);
}

并且也像这样(没有括号):

但不开火,请帮帮我....多谢

共有1个答案

楚骞尧
2023-03-14

我也有类似的问题,当我在组件中作为值表达式对象使用时,actionListener没有被激发。提交未成功,且未显示错误消息(也未记录)。所以我把值表达式改成简单的变量:整数,字符串等,然后对我起作用。

之前:

<p:selectOneMenu value="#{formCalendarDay.airplane}">
  <f:selectItems value="#{classifiers.airplanes}" var="airplane" itemLabel="#{airplane.name}" itemValue="#{airplane}"/>  
</p:selectOneMenu> 

修复后:

<p:selectOneMenu value="#{formCalendarDay.airplaneId}">
  <f:selectItems value="#{classifiers.airplanes}" var="airplane" itemLabel="#{airplane.name}" itemValue="#{airplane.id}"/>  
</p:selectOneMenu> 
 类似资料:
  • 我正在用JButtons和JTextFields制作一个程序。ActionListener适用于JButton,但不适用于JTextFields。 在我的Gui构造函数的中间,创建了“金额来自”TextField,然后我添加了一个actionListener。然后,在ActionHandler类的底部,我查找它的事件。但是,当我运行程序(单击“长度”)然后更改文本字段中的金额并按回车键时,我没有得

  • 莫因(你好), 当我将启动以下异常出现: 大家能帮我启动一下Tomcat吗?我尝试在xml中使用它,当我将web.xml和faces-config.xml放入WEB-INF文件夹时,我变成了同样的例外。(我从链接的帖子中获取xml文件)

  • 问题内容: 我对如何使用动作监听器和实现它们有一个想法,但是我想知道是否有人可以告诉我他们如何监听事件?有某种轮询机制吗? 问题答案: 动作侦听器使用观察者模式注册事件,主事件循环会将它们注册的所有事件通知它们。所以不,这不是轮询(拉)机制,而是相反的(推)回调。这是“不给我们打电话,我们给您打电话”编程的一个例子。因为代码中的所有内容都在单个线程(事件循环)上运行,所以您不必担心不同事件之间的同

  • 我目前正在为Asha手机制作一款应用程序,包括3xx系列和新的5xx系列。 我已经有了3xx系列的代码,比如Asha 310和311,但由于某种原因,当我编译并在Asha 501手机上试用它时,它不起作用。。 我正在收听“收音机1点击!!!”消息出现在Asha 310的模拟器控制台上,而不是Asha 501上。 我在Asha 310/311上使用的是诺基亚Java SDK 2.0,在Asha 50

  • null edit 根据BalusC的答案,我删除了myfaces-bundle-2.1.7.jar,现在我得到以下异常: 知道有什么问题吗?

  • 我正在尝试在我的应用程序中实现注销,因此我做了以下操作: 但是当我检查用户是否登录时,它说是: 我错过什么了吗?在使会话无效后,我是否应该获得一个新的AuthorizedUser实例(sessionScoped)? 编辑:如果有人需要,添加getHandler;)