Ajudar para recuperar Valor dos campos no ManagerBean

0 respostas
D

pessoal tinha postado um post anterior onde nao estava conseguindo recuperar os dados no meu ManagerBean, entao com ajuda de vcs eu acabei descobrindo um erro e achei que resolveria meu problema mais não resolveu…

o que acontece é que eu nao estou conseguindo recuperar os valores que estao sendo passado pro meu manager bem, quando eu faço o submit, ja analisei o codigo inteiro e nao consegui descobrir o pode ser, peço a ajuda do pessoal da GUJ pra tentar resolver este problema que ja estou a quase 2 dias, abaixo vou postar o codigo do xhtml e o managerbean…

XHTML

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

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">

<h:head>
	<style>
		.ui-widget,
		.ui-widget .ui-widget {
		font-size: 12px !important;
		}
	</style>
</h:head>

<p:ajaxStatus onstart="statusDialog.show();" onsuccess="statusDialog.hide();"/>  
              
<p:dialog modal="true" widgetVar="statusDialog" header="Status"   
        draggable="false" closable="false" resizable="false">  
    <p:graphicImage value="/img/loading.gif" />  
</p:dialog>  


<h:form id="form" >
<p:messages /> 
	<p:layout fullPage="true">
	  
		<p:layoutUnit position="north" size="100" resizable="false" closable="false" collapsible="false" id="topo">  
	        <h:outputText value="top" />  
	    </p:layoutUnit> 
	      <p:layoutUnit position="west" size="620" resizable="false" closable="false" collapsible="false" effect="drop" id="direita">  
	    <br />
		    <p:panel header="Double Combo" style="height:auto;width:600px;">  
	            <h:panelGrid columns="2" cellpadding="5"> 

	          	<h:outputLabel value="Cliente:" /> 
	                <p:selectOneMenu id="cliente" value="#{clienteBean.cliente.id}">
	                	<f:selectItem itemLabel="Selecione o Cliente" itemValue="" />   
	                    <f:selectItems value="#{clienteBean.lcliente}" 
	     				 var="cliente" itemLabel="#{cliente.nome} - #{cliente.vccodCliente}" itemValue="#{cliente.id}" />
	                    <p:ajax update="custo" listener="#{clienteBean.montaComboCentroCusto}"/>  
	                </p:selectOneMenu>  
	            	<h:outputLabel value="N° lote:" /> 
	            	<h:inputText value="#{clienteBean.numLote}" />
	            
	                <h:outputLabel value="Centro de Custo:" /> 
		            <p:selectOneMenu id="custo" value="#{clienteBean.idCusto}"> 
		           	   <f:selectItem itemLabel="Selecione o Centro de Custo" itemValue="" /> 
	                   <f:selectItems value="#{clienteBean.lcusto}" 
	     				var="custo" itemLabel="#{custo.vcdescriacao_cc} - #{custo.nmcod_cc}" itemValue="#{custo.nmcod_cc}"/>
	     		 
		            </p:selectOneMenu>
				</h:panelGrid>
				<p:commandButton type="Submit" value="Processar" actionListener="#{clienteBean.renderizaCamposBusca}" ajax="true" update="painelIframe,grid" />
	        </p:panel>  
        
        <!-- Parte de cadastro de novos indexadores -->
        
        <h:panelGrid columns="1" id="grid" >
		<p:panel header="Indexadores" style="margin-bottom:10px;height:auto;width:500px;" rendered="true" id="index">
			<h:dataTable id="basic" var="index" value="#{clienteBean.lindex}" binding="#{ClienteBean.dataTable}" >
					<p:column>
						<h:outputLabel value="#{index.label}: " rendered="true" />
						<p:inputText value="#{index.textInput}" rendered="#{index.isinput}" />
		
					<h:panelGroup>
							<p:inputText value="#{index.numini}" rendered="#{index.isinm}">
								<f:convertNumber integerOnly="true" />
							</p:inputText>
							<h:outputLabel value="até: " rendered="#{index.isinm}" />
							<p:inputText value="#{index.numfim}" rendered="#{index.isinm}">
								<f:convertNumber integerOnly="true" />
							</p:inputText>
							 
					</h:panelGroup>
	
					<p:inputTextarea value="#{index.textoArea}" rendered="#{index.istxt}" style="width:300px" />
					<p:inputText value="#{index.textInput}" rendered="#{index.isnum}" >
						<f:convertNumber integerOnly="true" />
					</p:inputText>
					
					<h:panelGroup>
						<h:panelGrid columns="1">
							<p:calendar rendered="#{index.isidt}" style="width:10px;" value="#{index.dataini}" />
							<h:outputLabel value="até: " rendered="#{index.isidt}" />
							<p:calendar rendered="#{index.isidt}" style="width:10px;"  value="#{index.datafim}"/>
						</h:panelGrid>
					</h:panelGroup>
					
						<h:outputLabel value="#{index.data} " rendered="#{index.isdat}" />
						<p:calendar rendered="#{index.isdat}" style="width:10px;"  value="#{index.data}"/>
					
					<p:selectOneMenu rendered="#{index.iscombo}" value="#{index.selecionado}">
						<f:selectItems value="#{index.lcombo}" var="combo" itemLabel="#{combo.opcao}" itemValue="#{combo.opcao}" />
					</p:selectOneMenu>
				</p:column>
			</h:dataTable>
			<br />
			<p:commandButton type="Submit" value="salvar" ajax="true" actionListener="#{ClienteBean.salvarIndexadores}" />
	</p:panel>
</h:panelGrid>
	     
	    <!-- Iframe abertura do arquivo PDF -->
	    
	    </p:layoutUnit> 
		<p:layoutUnit position="center" visible="true" id="pdf">
			<h:panelGrid id="painelIframe" width="100%">
				<iframe src="#{clienteBean.url}" width="100%" frameborder="0" name="pedf" id="pdf" style="height:630px;" scrolling="auto" />
				<h:outputText value="Total de páginas: #{clienteBean.totalPgPdf}" />
				<h:inputText value="#{clienteBean.url}" />
			</h:panelGrid>	
		</p:layoutUnit>
		<p:layoutUnit position="south" size="100" resizable="false" closable="false" collapsible="false">  
	        <h:outputText value="radape" />  
	    </p:layoutUnit> 
	</p:layout>
</h:form>
</html>

ClienteBean:

package br.com.agm.manager;


import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.component.html.HtmlDataTable;
import javax.faces.component.html.HtmlPanelGroup;


import br.com.agm.bean.CentroCusto;
import br.com.agm.bean.Cliente;
import br.com.agm.bean.Combo;
import br.com.agm.bean.ContCX;
import br.com.agm.bean.Documento;
import br.com.agm.bean.Indexador;
import br.com.agm.business.CentroCustoBusiness;
import br.com.agm.business.ClienteBusiness;
import br.com.agm.business.DocumentoBusiness;
import br.com.agm.business.IndexacaoBusiness;


@ManagedBean(name="clienteBean")
@ViewScoped
public class ClienteBean implements Serializable{

	private static final long serialVersionUID = 1L;

	private Cliente 	cliente 	= new Cliente(); 
	private Documento 	documento	= new Documento();
	private CentroCusto custo 		= new CentroCusto();
	private Indexador 	index;
	private Combo 		combo;
	private ContCX 		cx;

	private HtmlDataTable dataTable;
	private HtmlPanelGroup group;

	private List<Combo> 		lcombo 		= new ArrayList<Combo>();
	private List<CentroCusto> 	lcusto 		= new ArrayList<CentroCusto>();
	private List<Cliente> 		lcliente 	= new ArrayList<Cliente>();
	private List<Indexador> 	lindex 		= new ArrayList<Indexador>();
	private List<Documento> 	ldoc 		= new ArrayList<Documento>();
	private List<String> 		ldocumentos = new ArrayList<String>();

	private String idCusto;
	private String idCliente;
	private int totalPgPdf;
	private String numlote;
	
	private String url;
	private boolean layout = false;
	

	@PostConstruct
	public void init(){
		montaComboCliente();
	}
	

	/**
	 * Metodo que preenche o dropdown com 
	 * todos os clientes cadastrados.
	 */

	public void montaComboCliente(){

		try {
			
			
			ClienteBusiness clienteBusiness = ClienteBusiness.getInstance();
			lcliente = clienteBusiness.montaCombo();
	
		} catch (Exception e){
			System.out.println();
		}
	}
	
	
	public String Url(String url){			
		String src = url;
			
		return src;
	}


	/**
	 * Baixa o documento e exibe dentro de um iframe
	 */
	public void baixarDocumento(){
		
		String documento;
		
		try{
			
			DocumentoBusiness documentoBusiness = DocumentoBusiness.getInstance();
			//ClienteBusiness clienteBusiness = ClienteBusiness.getInstance();
			
			//Cliente novoCliente = clienteBusiness.buscaCliente(cliente);
			documento = documentoBusiness.buscaDocumentoFtp();
			List<Documento> ldoc = documentoBusiness.buscaDocumento(documento);
			totalPgPdf = documentoBusiness.calculaQuantidadePaginas(documento);	
			url = Url(ldoc.get(0).getNome());

			
		}catch(Exception e){
			System.out.println("erro nso metodo " +e.getMessage());
		}

	}
	

	
	public void listaDocumentos(){
		
		String documento;
		
		DocumentoBusiness documentoBusiness = DocumentoBusiness.getInstance();
		ldocumentos = documentoBusiness.listaDocsFTP();

	}
	

	public void nextPdf(){
		
		DocumentoBusiness documentoBusiness = DocumentoBusiness.getInstance();
		//documentoBusiness.
		
	}
	

	/**
	 * Metodo que preenche o componte de Select, 
	 * com os centro de custos
	 */
	public void montaComboCentroCusto(){

		try {

			//custo.setNmcod_cc(idCusto);
			//cliente.setId(idCliente);

			CentroCustoBusiness centroCustoBusiness = CentroCustoBusiness.getInstance();
			lcusto = centroCustoBusiness.montaCombo(cliente);

		} catch(Exception e){
			System.out.println(e.getMessage());
		}		
	}


	/**
	 * Renderizo os campos de busca do cliente selecionado
	 */
	public void renderizaCamposBusca(){

		IndexacaoBusiness indexBusiness = IndexacaoBusiness.getInstance();

		try {

			cliente.setCusto(custo);
			custo.setNmcod_cc("10");
			lindex = indexBusiness.montaCampoIndex(cliente);
			setLindex(lindex);
			setLayout(true);
			baixarDocumento();	
	
		} catch(Exception e){
			System.out.println("metodo Renderiza: "+e.getMessage());		
		}		
	}

	/**
	 * metodo que adicona um novo documento digitalizado
	 * @return
	 */
	public String salvarDocumento(){

		try{
			
			custo.setNmcod_cc("10");
			cliente.setId("63");
			cliente.setCusto(custo);
			cx.setCliente(cliente);

			documento.setCoddelta("123456");
			cx.setDocumento(documento);
			
			DocumentoBusiness documentoBusiness = DocumentoBusiness.getInstance();	
			documentoBusiness.salvarDocumento(documento, cliente);
			
			//documentoBusiness.moveApaga(documento, cliente);

		}catch(Exception e){
			System.out.println("erro ao salvar o documento"+e.getMessage());
		}
		return "/digitaliza?faces-redirect=true";
	}



	@SuppressWarnings("unchecked")
	/**
	 * Pego os dados digitado pelo usuario no 
	 * campos indexadores e gravo na tabela tbcont_cx.
	 */
	public void salvarIndexadores() throws Exception{

		cx = new ContCX();
		custo.setNmcod_cc("10");
		
		cliente.setId("63");
		cliente.setCusto(custo);
		cx.setCliente(cliente);

		documento.setCoddelta("123456");
		cx.setDocumento(documento);
		
		IndexacaoBusiness indexacaoBusiness = IndexacaoBusiness.getInstance();
		List<Indexador> lidx = (List<Indexador>) dataTable.getValue();
		indexacaoBusiness.insereIndexadores(lidx,cx);
		salvarDocumento();
	
	}
	



	/** Metodos Get e Set padrão do JSF*/

	public Cliente getCliente() {
		return cliente;
	}
	public void setCliente(Cliente cliente) {
		this.cliente = cliente;
	}
	public List<Cliente> getLcliente() {
		return lcliente;
	}
	public void setLcliente(List<Cliente> lcliente) {
		this.lcliente = lcliente;
	}

	public CentroCusto getCusto() {
		return custo;
	}
	public void setCusto(CentroCusto custo) {
		this.custo = custo;
	}
	public List<CentroCusto> getLcusto() {
		return lcusto;
	}
	public void setLcusto(List<CentroCusto> lcusto) {
		this.lcusto = lcusto;
	}

	public Indexador getIndex() {
		return index;
	}
	public void setIndex(Indexador index) {
		this.index = index;
	}
	public List<Indexador> getLindex() {
		return lindex;
	}
	public void setLindex(List<Indexador> lindex) {
		this.lindex = lindex;
	}


	public List<Documento> getLdoc() {
		return ldoc;
	}
	public void setLdoc(List<Documento> ldoc) {
		this.ldoc = ldoc;
	}
	public Documento getDocumento() {
		return documento;
	}
	public void setDocumento(Documento documento) {
		this.documento = documento;
	}

	public Combo getCombo() {
		return combo;
	}
	public void setCombo(Combo combo) {
		this.combo = combo;
	}

	public List<Combo> getLcombo() {
		return lcombo;
	}

	public void setLcombo(List<Combo> lcombo) {
		this.lcombo = lcombo;
	}

	public HtmlDataTable getDataTable() {
		return dataTable;
	}

	public void setDataTable(HtmlDataTable dataTable) {
		this.dataTable = dataTable;
	}
	
	
	public String getIdCusto() {
		return idCusto;
	}

	public void setIdCusto(String idCusto) {
		this.idCusto = idCusto;
	}

	public HtmlPanelGroup getGroup() {
		return group;
	}

	public void setGroup(HtmlPanelGroup group) {
		this.group = group;
	}

	public int getTotalPgPdf() {
		return totalPgPdf;
	}

	public void setTotalPgPdf(int totalPgPdf) {
		this.totalPgPdf = totalPgPdf;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public boolean isLayout() {
		return layout;
	}

	public void setLayout(boolean layout) {
		this.layout = layout;
	}

	public String getNumLote() {
		return numlote;
	}

	public void setNumLote(String numLote) {
		this.numlote = numLote;
	}

	public String getIdCliente() {
		return idCliente;
	}
	
	public void setIdCliente(String idCliente) {
		this.idCliente = idCliente;
	}
	
	public ContCX getCx() {
		return cx;
	}
	
	public void setCx(ContCX cx) {
		this.cx = cx;
	}

}

classe cliente

package br.com.agm.bean;

import java.io.Serializable;


public class Cliente implements Serializable{

	private static final long serialVersionUID = 1L;
	private String id;
	private String nome;
	private String vccodCliente;
	private CentroCusto custo;
	
	public CentroCusto getCusto() {
		return custo;
	}
	public void setCusto(CentroCusto custo) {
		this.custo = custo;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public String getVccodCliente() {
		return vccodCliente;
	}
	public void setVccodCliente(String vccodCliente) {
		this.vccodCliente = vccodCliente;
	}
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((id == null) ? 0 : id.hashCode());
		return result;
	}
	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Cliente other = (Cliente) obj;
		if (id == null) {
			if (other.id != null)
				return false;
		} else if (!id.equals(other.id))
			return false;
		return true;
	}
	
	
}

Classe custo

package br.com.agm.bean;

import java.io.Serializable;


public class CentroCusto implements Serializable{

	private static final long serialVersionUID = 1L;

	
	private String nmcod_cc;
	private String vcdescriacao_cc;
	private Indexador padrao;
	
	
	public String getVcdescriacao_cc() {
		return vcdescriacao_cc;
	}
	public void setVcdescriacao_cc(String vcdescriacao_cc) {
		this.vcdescriacao_cc = vcdescriacao_cc;
	}
	public Indexador getPadrao() {
		return padrao;
	}
	public void setPadrao(Indexador padrao) {
		this.padrao = padrao;
	}
	public String getNmcod_cc() {
		return nmcod_cc;
	}
	public void setNmcod_cc(String nmcod_cc) {
		this.nmcod_cc = nmcod_cc;
	}

	
	
}

o que estou fazendo de errado pra nao conseguir recuperar estes valore?

vlw pessoal abraço!!!

Criado 25 de maio de 2012
Respostas 0
Participantes 1