Olá pessoal, tenho uma página em que as requisições ajax só funcionam na segunda vez que eu clico no commandLink, e não com um clique só como seria o certo.
Por exemplo:
//Minha página. Apaguei tudo e deixei só isso para teste, mas mesmo assim o commandLink só executa o método no bean na segunda vez que eu clico--> <ui:compositiontemplate="./../../administrador/template.xhtml"xmlns="http://www.w3.org/1999/xhtml"xmlns:ui="http://java.sun.com/jsf/facelets"xmlns:p="http://primefaces.org/ui"xmlns:h="http://java.sun.com/jsf/html"xmlns:sec="http://www.springframework.org/security/facelets/tags"xmlns:f="http://java.sun.com/jsf/core"><ui:definename="content"><h:formid="form_cadastro_usuario"prependId="false"><h:inputTextid="txt_teste"value="#{managedBeanSecurity.telefone}"/><p:commandLinkactionListener="#{managedBeanSecurity.teste}"process="@this txt_teste"value="Enviar"/></h:form></ui:define></ui:composition>//Meu bean @ManagedBean@SessionScopedpublicclassManagedBeanSecurityimplementsSerializable{//Outras variáveis e métodos //Este método só é executado no segundo clique do commandLink publicvoidteste(ActionEvente){System.out.println("O método teste fo executado com êxito.");System.out.println("O telefone submetido foi:"+this.getTelefone());}}
Porém ainda não funcionou. O que será que esta errado?
Hebert_Coelho
cara, arranca fora esses trem de composition!
Testa com uma página seca tudo na mão. -_-’’
C
clarinetabest
Hebert para ser mais especifico, eis minha pagina inteira:
Na realidade esta página funciona perfeitamente, exceto dois componentes. O selectonemenu estado, quando escolhido o estado o valor muda mas depois volta rapidamente ao valor anterior. Na segunda vez, aí sim ele fica normal.
E o meu commandlink telefone também funciona porém só na segunda vez que eu clico. Acho que deve ser algo no ciclo de vida.
<ui:definename="content"><h:formid="form_cadastro_usuario"prependId="false"><fontsize="2"><p:growlglobalOnly="true"id="growl"sticky="true"showDetail="true"/><p:messagesglobalOnly="true"/><h:panelGridcolumns="1"><p:fieldsetlegend="#{i18n['header.dados.usuario']}"><h:panelGridid="pg_usuarios"columns="3"><p:outputLabelstyleClass="label_habilitado"id="label_som_tipo_usuario"for="som_role"value="#{i18n['tipo.usuario']}"/><p:selectOneMenustyleClass="input"required="true"id="som_role"requiredMessage="#{i18n['campo.obrigatorio']}"value="#{managedBeanSecurity.usuario.roles}"converter="objectConverter"><f:selectItemsvalue="#{managedBeanSecurity.roles}"var="r"itemLabel="#{r.nomeRole}"itemValue="#{r}"/></p:selectOneMenu><p:messageid="msg_som_usuario"for="som_role"/><p:outputLabelstyleClass="label_habilitado"id="label_txt_username"for="txt_username"value="#{i18n['usuario']}"/><p:inputTextstyleClass="input"validator="usuarioValidator"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="txt_username"label="#{i18n['label.nome']}"value="#{managedBeanSecurity.usuario.username}"><f:validatorvalidatorId="usuarioValidator"/><p:ajaxevent="blur"update=":form_cadastro_usuario:txt_username :form_cadastro_usuario:msg_txt_username :form_cadastro_usuario:label_txt_username"/></p:inputText><p:messageid="msg_txt_username"for="txt_username"/><p:outputLabelstyleClass="label_habilitado"id="label_txt_password"for="txt_password"value="#{i18n['password']}"/><p:passwordstyleClass="input"redisplay="true"promptLabel="#{i18n['coloque.senha']}"weakLabel="#{i18n['senha.fraca']}"strongLabel="#{i18n['senha.otima']}"goodLabel="#{i18n['senha.boa']}"feedback="true"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="txt_password"label="#{i18n['label.password']}"value="#{managedBeanSecurity.usuario.password}"><p:ajaxevent="blur"update=":form_cadastro_usuario:txt_password :form_cadastro_usuario:msg_txt_password :form_cadastro_usuario:label_txt_password"/></p:password><p:messageid="msg_txt_password"for="txt_password"/><p:outputLabelstyleClass="label_habilitado"id="label_txt_reenter_password"for="txt_reenter_password"value="#{i18n['reenter.password']}"/><p:passwordstyleClass="input"redisplay="true"validatorMessage="#{i18n['validator.confirm.password']}"validator="#{managedBeanSecurity.reenterPasswordValidator}"promptLabel="#{i18n['coloque.senha']}"weakLabel="#{i18n['senha.fraca']}"strongLabel="#{i18n['senha.otima']}"goodLabel="#{i18n['senha.boa']}"feedback="true"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="txt_reenter_password"value="#{managedBeanSecurity.usuario.reenterPassword}"><p:ajaxevent="blur"update=":form_cadastro_usuario:txt_reenter_password :form_cadastro_usuario:msg_txt_reenter_password :form_cadastro_usuario:label_txt_reenter_password"/></p:password><p:messageid="msg_txt_reenter_password"for="txt_reenter_password"/></h:panelGrid></p:fieldset><p:fieldsetlegend="#{i18n['dados.pessoais']}"><h:panelGridcolumns="3"><p:outputLabelstyleClass="label_habilitado"id="label_txt_nome"for="txt_nome"value="#{i18n['nome']}"/><p:inputTextstyleClass="input"size="40"id="txt_nome"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"value="#{managedBeanSecurity.usuario.clientes.nome}"><p:ajaxevent="blur"update=":form_cadastro_usuario:txt_nome :form_cadastro_usuario:msg_txt_nome :form_cadastro_usuario:label_txt_nome"/></p:inputText><p:messageid="msg_txt_nome"for="txt_nome"/><p:outputLabelstyleClass="label_habilitado"id="label_txt_data_nascimento"for="txt_data_nascimento"value="#{i18n['nascimento']}"/><p:calendarstyleClass="input"pages="2"size="10"requiredMessage="#{i18n['campo.obrigatorio']}"maxdate="#{managedBeanSecurity.limite_inicial}"mindate="#{managedBeanSecurity.limite_anterior}"locale="pt_BR"pattern="dd/MM/yyyy"required="true"id="txt_data_nascimento"value="#{managedBeanSecurity.usuario.clientes.dataNascimento}"><p:ajaxevent="dateSelect"update=":form_cadastro_usuario:txt_data_nascimento :form_cadastro_usuario:msg_txt_data_nascimento :form_cadastro_usuario:label_txt_data_nascimento"/></p:calendar><p:messageid="msg_txt_data_nascimento"for="txt_data_nascimento"/></h:panelGrid></p:fieldset><p:fieldsetlegend="#{i18n['documentacao']}"><h:panelGridcolumns="3"><p:outputLabelstyleClass="label_habilitado"id="label_txt_rg"for="txt_rg"value="#{i18n['rg']}"/><p:inputTextstyleClass="input"value="#{managedBeanSecurity.usuario.clientes.rg}"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="txt_rg"><p:ajaxevent="blur"update=":form_cadastro_usuario:label_txt_rg :form_cadastro_usuario:msg_txt_rg :form_cadastro_usuario:txt_rg"/></p:inputText><p:messageid="msg_txt_rg"for="txt_rg"/><p:outputLabelstyleClass="label_habilitado"id="label_txt_cpf"for="txt_cpf"value="#{i18n['cpf']}"/><p:inputMaskstyleClass="input"mask="[CPF removido]"value="#{managedBeanSecurity.usuario.clientes.cpf}"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="txt_cpf"><f:validatorvalidatorId="cpfValidatorExists"/><f:validatorvalidatorId="cpfValidatorValid"/><p:ajaxevent="blur"update=":form_cadastro_usuario:label_txt_cpf :form_cadastro_usuario:msg_txt_cpf :form_cadastro_usuario:txt_cpf"/></p:inputMask><p:messageid="msg_txt_cpf"for="txt_cpf"/></h:panelGrid></p:fieldset><p:fieldsetid="fs_dados_postais"legend="#{i18n['dados.postais']}"><h:panelGridcolumns="3"><p:outputLabelstyleClass="label_habilitado"for="txt_cep"id="label_txt_cep"value="#{i18n['cep']}"/><p:inputMaskstyleClass="input"mask="99.999-999"value="#{managedBeanSecurity.usuario.clientes.cep}"id="txt_cep"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"><p:ajaxevent="blur"update=":form_cadastro_usuario:fs_dados_postais"listener="#{managedBeanSecurity.buscaEnderecoPorCep}"/></p:inputMask><p:messageid="msg_txt_cep"for="txt_cep"/><p:outputLabelstyleClass="label_habilitado"id="label_som_estado"for="som_estado"value="#{i18n['estado']}"/><p:selectOneMenustyleClass="input"value="#{managedBeanSecurity.usuario.clientes.cidades.estados}"converter="estadoConverter"valueChangeListener="#{managedBeanSecurity.carregaCidades}"id="som_estado"><f:selectItemsvalue="#{managedBeanSecurity.estados}"var="e"itemLabel="#{e.estado}"itemValue="#{e}"/><p:ajaxevent="change"update=":form_cadastro_usuario:som_cidade :form_cadastro_usuario:label_som_estado :form_cadastro_usuario:msg_som_estado :form_cadastro_usuario:som_estado "/></p:selectOneMenu><p:messageid="msg_som_estado"for="som_estado"/><p:outputLabelstyleClass="label_habilitado"id="label_som_cidade"for="som_cidade"value="#{i18n['cidade']}"/><p:selectOneMenustyleClass="input"valueChangeListener="#{managedBeanSecurity.carregaBairros}"converter="cidadeConverter"value="#{managedBeanSecurity.usuario.clientes.cidades}"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="som_cidade"><f:selectItemsvalue="#{managedBeanSecurity.cidades}"var="c"itemLabel="#{c.cidade}"itemValue="#{c}"/><p:ajaxevent="change"update=":form_cadastro_usuario:label_som_cidade :form_cadastro_usuario:msg_som_cidade :form_cadastro_usuario:som_cidade"/></p:selectOneMenu><p:messageid="msg_som_cidade"for="som_cidade"/><p:outputLabelstyleClass="label_habilitado"for="ac_bairro"id="label_ac_bairro"value="#{i18n['bairro']}"/><p:autoCompletestyleClass="input"itemLabel="#{bairro}"itemValue="#{bairro.bairro}"var="bairro"value="#{managedBeanSecurity.usuario.clientes.bairro}"completeMethod="#{managedBeanSecurity.suggestionsBairros}"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="ac_bairro"><p:ajaxevent="itemSelect"listener="#{managedBeanSecurity.carregaLogradouros}"process="ac_bairro"update=":form_cadastro_usuario:label_ac_bairro :form_cadastro_usuario:msg_ac_bairro :form_cadastro_usuario:ac_bairro :form_cadastro_usuario:ac_logradouro"/></p:autoComplete><p:messageid="msg_ac_bairro"for="ac_bairro"/><p:outputLabelstyleClass="label_habilitado"for="ac_logradouro"id="label_ac_logradouro"value="#{i18n['logradouro']}"/><p:autoCompletestyleClass="input"size="40"itemLabel="#{logradouro}"itemValue="#{logradouro.logradouro}"var="logradouro"value="#{managedBeanSecurity.usuario.clientes.logradouro}"completeMethod="#{managedBeanSecurity.suggestionsLogradouros}"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"id="ac_logradouro"><p:ajaxevent="itemSelect"update=":form_cadastro_usuario:label_ac_logradouro :form_cadastro_usuario:msg_ac_logradouro :form_cadastro_usuario:ac_logradouro"/></p:autoComplete><p:messageid="msg_ac_logradouro"for="ac_logradouro"/><p:outputLabelstyleClass="label_habilitado"for="txt_numero_logradouro"id="label_txt_numero_logradouro"value="#{i18n['numero']}"/><p:spinnerstyleClass="input"id="txt_numero_logradouro"value="#{managedBeanSecurity.usuario.clientes.numeroLogradouro}"required="true"requiredMessage="#{i18n['campo.obrigatorio']}"><p:ajaxevent="change"update=":form_cadastro_usuario:label_txt_numero_logradouro :form_cadastro_usuario:msg_txt_numero_logradouro :form_cadastro_usuario:txt_numero_logradouro"/></p:spinner><p:messageid="msg_txt_numero_logradouro"for="txt_numero_logradouro"/><p:outputLabelstyleClass="label_habilitado"id="label_txt_email"for="txt_email"value="#{i18n['email']}"/><p:inputTextstyleClass="input"validatorMessage="#{i18n['validator.email']}"size="20"value="#{managedBeanSecurity.usuario.clientes.EMail}"id="txt_email"><f:validateRegexpattern="[\w\.-]*[a-zA-Z0-9_]@[\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]"/><p:ajaxevent="blur"update=":form_cadastro_usuario:label_txt_email :form_cadastro_usuario:msg_txt_email :form_cadastro_usuario:txt_email"/></p:inputText><p:messageid="msg_txt_email"for="txt_email"/><p:outputLabelstyleClass="label_habilitado"id="label_ck_enabled"for="ck_enabled"value="Habilitar"/><p:selectBooleanCheckboxstyleClass="input"id="ck_enabled"value="#{managedBeanSecurity.usuario.enabled}"><p:ajaxevent="change"/></p:selectBooleanCheckbox><p:messageid="msg_ck_enabled"for="ck_enabled"/></h:panelGrid>//Coloquei para teste e não funciona <h:inputTextid="txt_teste"value="#{managedBeanSecurity.telefone}"/><p:commandLinkactionListener="#{managedBeanSecurity.teste}"process="@this txt_teste"value="Enviar"/><p:outputPanelid="op_tabela_telefones_cliente"></p:outputPanel></p:fieldset><h:panelGridcolumns="3"><p:commandLinkid="btn_clear_cliente"actionListener="#{managedBeanSecurity.apagarUsuario}"><p:graphicImageurl="/resources/img/icones/clear_48.png"height="48px"width="48px"/></p:commandLink><p:commandLinkid="btn_incluir_cliente"onclick="wv_dlg_incluir_usuario.show();"><p:graphicImageurl="/resources/img/icones/save_48.png"height="48px"width="48px"/></p:commandLink><p:commandLinkid="btn_gerenciar_usuarios"immediate="true"ajax="false"process="@form"action="/paginas/funcionario/usuario/gerenciar?faces-redirect=true"><p:graphicImageurl="/resources/img/icones/managed_users_48.png"height="48px"width="48px"/></p:commandLink></h:panelGrid></h:panelGrid></font><p:dialogheader="#{i18n['header.inclusao.usuario']}"modal="true"id="dlg_inclusao_usuario"closable="true"widgetVar="wv_dlg_incluir_usuario"><center><h:panelGridcolumns="2"><p:graphicImageurl="/resources/img/icones/question_64.png"/><h:outputTextvalue="#{i18n['confirmar.inclusao']}"/></h:panelGrid><h:panelGridcolumns="2"><p:commandButtonprocess="@this"actionListener="#{managedBeanSecurity.incluirCliente}"value="#{i18n['incluir']}"onclick="wv_dlg_incluir_usuario.hide();"></p:commandButton><p:commandButtonid="btn_cancelar_usuario"value="#{i18n['cancelar']}"onclick="wv_dlg_incluir_usuario.hide();"type="button"/></h:panelGrid></center></p:dialog><p:dialogmodal="modal"header="#{i18n['header.exclusao.telefones.usuario']}"id="dlg_exclusao_telefones_usuario"closable="true"widgetVar="wv_dlg_exclusao_telefones_usuario"><center><h:panelGridcolumns="2"><p:graphicImageurl="/resources/img/icones/question_64.png"/><h:outputTextvalue="#{i18n['confirmar.exclusao']}"/></h:panelGrid><h:panelGridcolumns="2"><p:commandButtononclick="wv_dlg_exclusao_telefones_usuario.hide();"process="@this"actionListener="#{managedBeanSecurity.excluirTelefonesCliente}"value="#{i18n['excluir']}"update=":form_cadastro_usuario:op_tabela_telefones_cliente"></p:commandButton><p:commandButtonvalue="#{i18n['cancelar']}"onclick="wv_dlg_exclusao_telefones_usuario.hide();"type="button"/></h:panelGrid></center></p:dialog><p:ajaxStatusstyle="position:fixed;right:5px;top:5px"><f:facetname="start"><p:panelstyle="width: 250px;"><h:panelGridcolumns="1"><h:outputTextstyleClass="label_habilitado"value="Processando sua requisição"/><p:graphicImagevalue="/resources/img/icones/ajax_loader_barra.gif"/></h:panelGrid></p:panel></f:facet><f:facetname="complete"><h:outputTextvalue=""/></f:facet></p:ajaxStatus></h:form></ui:define>