A4j nao renderiza

3 respostas
fabioebner

Pessoal fiz o seguinte exemplo:

jsp
<a4j:form id="form1" ajaxSubmit="true" ignoreDupResponses="true" requestDelay="500">                    
                         <h:inputText value="#{detalhaVotacaoBean.ordenacao}"/>
                        <a4j:commandLink actionListener="#{detalhaVotacaoBean.setOrdem}"
                            reRender="carList">
                            <f:verbatim> aee </f:verbatim>
                             <f:attribute name="ordenacao" value="nr_zona"/>
                        </a4j:commandLink>
            <h:commandButton value="Cadastrar" type="button">
			<a4j:support event="onclick" actionListener="#{detalhaVotacaoBean.setOrdem}" />
		</h:commandButton>
               
               <rich:dataTable width="300" id="carList" rows="10"
                    value="#{detalhaVotacaoBean.votacao}" var="votacao">
                    <f:facet name="header">
                        <rich:columnGroup>
                            <h:column>
                                <h:outputText styleClass="headerText" value="nome" />
                            </h:column>
                            <h:column>
                                <h:outputText styleClass="headerText" value="Candidato" />
                            </h:column>
                            <h:column>
                                <h:outputText styleClass="headerText" value="Zona" />
                            </h:column>
                            <h:column>
                                <h:outputText styleClass="headerText" value="Bairro" />
                            </h:column>
                            <h:column>
                                <h:outputText styleClass="headerText" value="Votos" />
                            </h:column>                            
                        </rich:columnGroup>
                    </f:facet>

                    <h:column>
                        <h:outputText value="#{votacao.nm_vila_jardim}" />
                    </h:column>
                    <h:column>
                        <h:outputText value="#{votacao.nm_pessoa}" />
                    </h:column>
                    <h:column>
                        <h:outputText value="#{votacao.nm_bairro}" />
                    </h:column>
                    <h:column>
                        <h:outputText value="#{votacao.nr_zona}" />
                    </h:column>
                    <h:column>
                        <h:outputText value="#{votacao.vl_votacao_candidato}" />
                    </h:column>
                </rich:dataTable>


            <rich:spacer height="15" />

    </a4j:form>
o beand:
public class DetalhaVotacaoBean {

    public DetalhaVotacaoBean() {
    }
    private String ordenacao = null;
    
    public Result getVotacao() {
        Collection toReturn = new ArrayList();
        ResultSet rs = null;
        try {
            Connection conexao = Conexao.getInstancia().conectarDb();
            PreparedStatement st = conexao.prepareStatement("SELECT tb_pessoa.nm_pessoa, tb_bairro.nm_bairro, tb_zona.nr_zona, tb_vila_jardim_bairro.nm_vila_jardim, vl_votacao_candidato FROM tb_votacao JOIN tb_pessoa ON tb_pessoa.cd_pessoa = tb_votacao.cd_pessoa JOIN tb_vila_jardim_bairro ON tb_vila_jardim_bairro.cd_vila_jardim = tb_votacao.cd_vila_jardim JOIN tb_bairro ON tb_bairro.cd_bairro = tb_vila_jardim_bairro.cd_bairro JOIN tb_zona ON tb_zona.cd_zona = tb_bairro.cd_zona ORDER BY ?");
            st.setString(1, ordenacao);
            rs = st.executeQuery();
            
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
        return  ResultSupport.toResult(rs);
    }

    public void setOrdenacao(String ordenacao) {
        this.ordenacao = ordenacao;
    }

    public String getOrdenacao() {
        return ordenacao;
    }

    public void setOrdem(ActionEvent e){
        System.out.println("aeeee");
        this.ordenacao = "nm_bairro";
    }

}
meu faces-config esta assim:
<managed-bean>
        <managed-bean-name>detalhaVotacaoBean</managed-bean-name>
        <managed-bean-class>br.com.dnasolution.bean.DetalhaVotacaoBean</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>

ele executa o ajax pois imprime no console o aeee mas nao da o reRender na tabela.. nao esta trocando a ordenacao.. alguem sabe o pq??

obrigado

3 Respostas

fabioebner

cara deu certo… agora deixa eu te perguntar uma coisa… como eu envio um parametro para o meu metodo?? tu sabe como??
valeus

fabioebner

e outra coisa cara… pq ele executa o meu metodo duas vezes?? eu nao estou chamando ele novamente nao entendi isso e outra coisa para enviar um parametro teria q ser ao clicar num link… consegue me ajudar??
obrigado

3rd_child

Olá fabioebner!

Em vez de dar um reRender na datatable, tente dar um reRender no form.

Flw!

Criado 21 de janeiro de 2008
Ultima resposta 21 de jan. de 2008
Respostas 3
Participantes 2