Help JSF

0 respostas
fabioebner
Pessoa tenho o seguinte html:
<%@ taglib prefix="f" uri="http://java.sun.com/jsf/core" %>
<%@ taglib prefix="h" uri="http://java.sun.com/jsf/html" %>
<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<f:subview id="menu">
    <html>
        <head>
            <title>Campanha</title>
            <style type="text/css">
                <!--
                body {
                    margin-left: 0px;
                    margin-top: 0px;
                    margin-right: 0px;
                    margin-bottom: 0px;
                }
                -->
            </style>
            <link href="../css/folha.css" rel="stylesheet" type="text/css" />
            <script>
                function addNomeCidade(objeto){
                    var objNomeBairro = document.getElementById("form1:hdNomeBairro");
                    objNomeBairro.value = objeto.options[objeto.selectedIndex].text;
                }
            </script>
    </head>
        
        <body>
            <a4j:form id="form1" ajaxSubmit="true" ignoreDupResponses="true" requestDelay="500">                    
            <table width="780" align="center" cellpadding="0" cellspacing="0" border="0">
                <tr>
                    <th width="170" rowspan="2" valign="top" scope="col">
                    <a href="../principal/principal.jsf">
                    <img src="../imagens/topo_logo.jpg" width="170" height="190" border="0" /></a></th>
<th width="610" height="57" colspan="2" valign="top" background="../imagens/topo.jpg" scope="col">
<table width="100%" height="55" border="0" cellpadding="0" cellspacing="0">
                            <tr>
                                <th height="19" scope="col"><%--@ include file="../principal/topo.jsp" --%></th>
                            </tr>
                            <tr>
                                <th scope="row"><%--@ include file="../principal/menu.jsp" --%></th>
                            </tr>
                        </table>
                  </th>
                </tr>
                <tr>
                    <td colspan="2" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
                      <tr>
                        <td height="10"></td>
                      </tr>
                      <tr>
                        <td><span class="fonte_titulo">&nbsp;cadastro de pesquisas</span></td>
                      </tr>
                      <tr>
                        <td class="fonte">&nbsp;inclus&atilde;o de pesquisas induzidas e expont&acirc;neas</td>
                      </tr>
                      <tr>
                        <td>&nbsp;</td>
                      </tr>
                      <tr>
                        <td><table width="98%" border="0" align="center" cellpadding="0" cellspacing="0" class="borda_cinza">
                          <tr>
                            <td colspan="6" class="fonte">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4"><span class="fonte">Tipo da pesquisa:&nbsp;
                                <label>
                                  <input type="radio" name="radio" id="pesquisa" value="bairro"  checked="checked"/>
                                  Induzida</label>
                                &nbsp;
                                <label>
                                <input type="radio" name="radio" id="pesquisa" value="bairro" />
                            Expont&acirc;nea</label>
                            </span>                              <label></label></td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4">&nbsp;</td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4"> <span class="fonte">Data da Pesquisa:
                                          <rich:calendar value="#{PesquisaBean.objPesquisa.dataPesquisa.time}"
                                                           popup="true"
                                                           datePattern="dd/MM/yyyy" 
                                                   showApplyButton="false"/> </span></td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4">&nbsp;</td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td width="3%" height="19"></td>
                            <td height="19" colspan="4"><span class="fonte"><strong>
                              <h:outputLink value="javascript:void(0);" onclick="Richfaces.showModalPanel('mpBairro',{width:550, top:100})" styleClass="fonte_menu">Bairro:</h:outputLink>
                            </strong>
                            </span></td>
                            <td width="2%" height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19">&nbsp;</td>
                            <td height="19" colspan="4"><span class="fonte">
                                    <h:selectOneMenu id="selectBairro"  value="#{PesquisaBean.objPesquisa.codigoBairro}" styleClass="combo" onchange="addNomeCidade(this)">
                        <f:selectItems
                            value="#{montaCombo.bairro}" />
                        </h:selectOneMenu>    
                        <h:inputHidden value="#{PesquisaBean.objPesquisa.nomeBairro}" id="hdNomeBairro"/>
                            </span></td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19" colspan="6">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td width="20%" height="19" class="fonte">N.&deg; Pessoas:</td>
                            <td width="20%" class="fonte">Porcentagem Inicial:</td>
                            <td width="20%" class="fonte">Porcentagem Final:</td>
                            <td width="27%" class="fonte">&nbsp;</td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19"><h:inputText value="#{PesquisaBean.objPesquisa.totalPessoas}" id="pessoas" styleClass="borda_cinza" size="10" maxlength="4" /></td>
                            <td height="19"><h:inputText value="#{PesquisaBean.objPesquisa.porcentagemInicial}" id="porcentagemInicial" styleClass="borda_cinza" maxlength="250" size="10"/></td>
                            <td height="19"><h:inputText value="#{PesquisaBean.objPesquisa.porcentagemFinal}" id="porcentagemFinal" styleClass="borda_cinza" maxlength="250"  size="10"/></td>
                            <td height="19"></td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4">&nbsp;</td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4"><a4j:commandButton value="Adicionar Item" reRender="listaItens" actionListener="#{PesquisaBean.addItemPesquisa}"  action="onclick"/> </td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4">&nbsp;</td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4" class="fonte">Itens Adicionados:</td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19"></td>
                            <td height="19" colspan="4" class="fonte">
                                <rich:dataTable id="listaItens" value="#{PesquisaBean.pesquisa}" var="pes">
                                    <f:facet name="header">
                                        <rich:columnGroup>
                                            <rich:column>
                                                <h:outputText value="X" />
                                            </rich:column>
                                            <rich:column>
                                                <h:outputText value="Bairro" />
                                            </rich:column>            
                                            <rich:column>
                                                <h:outputText value="Tot. Pessoas" />
                                            </rich:column>                       
                                            <rich:column>
                                                <h:outputText value="% Inicial" />
                                            </rich:column>                
                                            <rich:column>
                                                <h:outputText value="% Final" />
                                            </rich:column>                                               
                                        </rich:columnGroup>
                                    </f:facet>
                                    <rich:column>                                    
                                    <h:outputText value="remover" />
                                    </rich:column>
                                    <rich:column>                                    
                                    <h:outputText value="#{pes.nomeBairro}" />
                                    </rich:column>                                    
                                    <rich:column>                                    
                                    <h:outputText value="#{pes.totalPessoas}" />
                                    </rich:column>                                       
                                    <rich:column>                                    
                                    <h:outputText value="#{pes.porcentagemInicial}" />
                                    </rich:column>  
                                    <rich:column>                                    
                                    <h:outputText value="#{pes.porcentagemFinal}" />
                                    </rich:column>                                       
                                </rich:dataTable>                            
                          </td>
                            <td height="19">&nbsp;</td>
                          </tr>
                          <tr>
                            <td height="19" colspan="6">&nbsp;</td>
                          </tr>
                        </table></td>
                      </tr>
                      <tr>
                        <td>&nbsp;</td>
                      </tr>
                      <tr>
                        <td><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="borda_cinza">
                          <tr>
                            <td width="2%" bgcolor="#DFDFDF">&nbsp;</td>
                            <td width="98%" bgcolor="#DFDFDF" class="fonte"><strong>Ajuda</strong></td>
                          </tr>
                          <tr>
                            <td bgcolor="#DFDFDF">&nbsp;</td>
                            <td bgcolor="#DFDFDF" class="fonte">- Selecione o tipo da pesquisa marcando se &eacute; Induzida ou Expont&acirc;nea;<br />
                            <br />
                            - Preencha o campo bairro, verificando se o mesmo j&aacute; foi cadastrado, caso n&atilde;o tenha sido, cadastre-o clicando sobre a palavra em negrito &quot;<strong>Bairro</strong>&quot;, em seguida preencha os demais campos;<br />
                            <br />
                            - Clique em Cadastrar para finalizar o processo.</td>
                          </tr>
                          <tr>
                            <td height="10" colspan="2" bgcolor="#DFDFDF"></td>
                          </tr>
                        </table></td>
                      </tr>
                      <tr>
                        <td>&nbsp;</td>
                      </tr>
                  </table>                    </td>
                </tr>
            </table> 
            <%@ include file="../principal/rodape.jsp" %>
            <%--@ include file="../cadastro_auxiliar/cadastro_bairro.jsp" --%>
            </a4j:form>
        </body>
    </html>
    </f:subview>
o seguinte PesquisaBean:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.dnasolution.bean;

import br.com.dnasolution.db.Conexao;
import br.com.dnasolution.objeto.PesquisaObjeto;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import javax.faces.component.html.HtmlSelectOneMenu;
import javax.faces.event.ActionEvent;
import javax.faces.model.SelectItem;
import javax.servlet.jsp.jstl.sql.Result;
import javax.servlet.jsp.jstl.sql.ResultSupport;

/**
 *
 * @author Fabio Ebner
 */
public class PesquisaBean {

    /** Creates a new instance of PesquisaBean */
    private int codigoPesquisa;
    private String ordenacao;
    private int codigoPessoa;
    private List<PesquisaObjeto> pesquisa = new ArrayList<PesquisaObjeto>();
    private PesquisaObjeto objPesquisa = new PesquisaObjeto();
   
 
    public void setObjPesquisa(PesquisaObjeto objPesquisa) {
        this.objPesquisa = objPesquisa;
    }

    public PesquisaObjeto getObjPesquisa() {
        return objPesquisa;
    }    
    
    public PesquisaBean() {
  
    }

    public List<PesquisaObjeto> getPesquisa() {
        return pesquisa;
    }

    public void setPesquisa(List<PesquisaObjeto> pesquisa) {
        this.pesquisa = pesquisa;
    }

    public int getCodigoPesquisa() {
        return codigoPesquisa;
    }

    public int getCodigoPessoa() {
        return codigoPessoa;
    }

    public void setCodigoPessoa(int codigoPessoa) {
        this.codigoPessoa = codigoPessoa;
    }

    public void setCodigoPesquisa(int codigoPesquisa) {
        this.codigoPesquisa = codigoPesquisa;
    }

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

    public String getOrdenacao() {
        return ordenacao;
    }

    public Collection getPessoaPesquisaEspontanea() {
    
    }

    public Collection getPessoaPesquisaInduzida() {
    
    }

    public Collection getDataPessoaPesquisaInduzida() {
       
    }

    public Collection getDataPessoaPesquisaEspontanea() {
        
    }

    public Result getPesquisaInduzidaDetalhada() {
        
    }

    public Result getPesquisaEspontaneaDetalhada() {
        
    }

    public void setOrdem(ActionEvent evt) {
    }
    
    public void addItemPesquisa(ActionEvent evt){
        
        System.out.println("aee");
        pesquisa.add(objPesquisa);
        
    }
    
}
e o seguinte PesquisaObjeto:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.dnasolution.objeto;

import java.util.GregorianCalendar;

/**
 *
 * @author Administrador
 */
public class PesquisaObjeto {

    private String tipoPesquisa;
    private int codigoBairro;
    private String nomeBairro;
    private int totalPessoas;
    private float porcentagemInicial;
    private float porcentagemFinal;
    private GregorianCalendar dataPesquisa = null;

    public PesquisaObjeto() {
        dataPesquisa = new GregorianCalendar();
    }

    public String getTipoPesquisa() {
        return tipoPesquisa;
    }

    public void setTipoPesquisa(String tipoPesquisa) {
        this.tipoPesquisa = tipoPesquisa;
    }

    public int getCodigoBairro() {
        return codigoBairro;
    }

    public void setCodigoBairro(int codigoBairro) {
        this.codigoBairro = codigoBairro;
    }

    public String getNomeBairro() {
        return nomeBairro;
    }

    public void setNomeBairro(String nomeBairro) {
        this.nomeBairro = nomeBairro;
    }

    public int getTotalPessoas() {
        return totalPessoas;
    }

    public void setTotalPessoas(int totalPessoas) {
        this.totalPessoas = totalPessoas;
    }

    public float getPorcentagemInicial() {
        return porcentagemInicial;
    }

    public void setPorcentagemInicial(float porcentagemInicial) {
        this.porcentagemInicial = porcentagemInicial;
    }

    public float getPorcentagemFinal() {
        return porcentagemFinal;
    }

    public void setPorcentagemFinal(float porcentagemFinal) {
        this.porcentagemFinal = porcentagemFinal;
    }

    public GregorianCalendar getDataPesquisa() {
        return dataPesquisa;
    }

    public void setDataPesquisa(GregorianCalendar dataPesquisa) {
        this.dataPesquisa = dataPesquisa;
    }
    
    
}

o meu problema qual eh.. sempre q eu clico no botao para adicionar um item no PESQUISA ele iguala todos a o eu estou mandando.. ele me retornar o numero de itens certo porem ele substitui todos pelo q eu estou enviando.. alguem sabe o pq??

abracos

Criado 15 de fevereiro de 2008
Respostas 0
Participantes 1