Problemas com JDBC

10 respostas
arthurgon

Gente…preciso de ajuda. Não conheço quase nada de JDBC. Preciso inserir dados em uma tela de consulta. Cheguei até aí embaixo. Onde estão as aspas é oq preciso completar. Não sei como completar.
Chamo o método pela “Action”.

public void inserirDados( Long nrDocumento, Date dataPagamento, Double vlPagamento ) throws CommerceException {
		
		Connection con = null;
		PreparedStatement ps = null;
		
		StringBuffer query = new StringBuffer();
		query.append( "INSERT INTO PAGTO_TITULOS_OFF ( ID_DIVIDA, DT_LANCAMENTO, VL_RECEB ) " );
		query.append( "VALUES( ?, ?, ? ) " );
		
		try{
			
			con = super.getConnection();
			
			//this.excluirDados( nrDocumento, dataPagamento, vlPagamento);
			
				
				super.closeObjetosConexao( ps );
				ps = con.prepareStatement( query.toString() );
				
				ps.setInt( 1, "".get""() );
				ps.setInt( 2, "".get""() );
				ps.setInt( 3, "".get""()  ); 
					
				ps.executeUpdate();
				
			
		} catch (SQLException e) {
			throw new CommerceException( e.getMessage(), e.getErrorCode() );
		} catch (Exception e) {
			throw new CommerceException( e.getMessage() );
		} finally {
			super.closeObjetosConexao( con, ps );
		}
		
		
	}

10 Respostas

herbertins

o que seria isso ???

ps.setInt( 1, "".get""() ); ps.setInt( 2, "".get""() ); ps.setInt( 3, "".get""() );

Zeed01

Bom dia Colegas !

Me parece que seu método já recebe os valores a serem inseridos:

public void inserirDados( Long nrDocumento, Date dataPagamento, Double vlPagamento )

Logo, acho que essas linhas deveriam ficar assim:

ps.setLong( 1, nrDocumento );   
ps.setDate( 2, dataPagamento );   
ps.setDouble( 3, vlPagamento);

[]s

arthurgon

Na hora de rodar na WEB a reposta q tenho é essa:

message Action[/processaPagamentoFatura] does not contain method named salvar

Alguem sabe oque é???

herbertins

Pelo que vc postouu não existe mesmo metodo salvar??? coloque todo seu código para tentarmos ajuda-lo.

abs

Zeed01

Bom dia colegas !

Sem ver o resto do código fica difícil… o que você esta usando ? JSP ? JSF ?

Bom não deixa de ser verdade… vc tem um método inserirDados e não um Salvar.

O que é processaPagamentoFatura ?

[]s

arthurgon

Ok…aí vai todo o método:
Esse abaicho é o meu DispatchAction:

/**
*
*/
package action;

import java.util.Date;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

import org.apache.struts.action.DynaActionForm;

import org.apache.struts.actions.DispatchAction;

import org.apache.struts.util.MessageResources;

import org.displaytag.tags.TableTagParameters;

import org.displaytag.util.ParamEncoder;

import tools.Calendario;

import tools.MenuTools;

import bc.ClienteBC;

import bc.EmpresaBC;

import bc.PagamentoFaturaBC;

import bc.VendedorBC;

import bean.ClienteBean;

import bean.EnderecoClienteBean;

import bean.FiltroPagamentoFaturaBean;

import bean.FocoBean;

import bean.ListaEmpresasBean;

import bean.ListaPagamentoFaturaBean;

import bean.ListaVendedoresBean;

import bean.PagamentoFaturaBean;

import bean.PaginaBean;

import bean.UserLoginBean;

import bean.ValidacaoBean;

import exception.CommerceException;

import exception.InvalidException;

/**

  • Processa as requisicoes da tela de consulta de pedidos/orcamentos
  • @author evanildo

*/
public class PagamentoFaturaDispatchAction extends DispatchAction implements IKeyWords {

private static MessageResources messageResources = null;
private final String PAGAMENTO_FATURA = "pagamentoFatura";
private final String DEVOLUCAO_PRODUTO_CONFIRMADA = "devolucaoProdutoConfirmada";

static {
	try {
		messageResources = MessageResources.getMessageResources( "resources.ApplicationResources" );
	} catch (Exception e) {
		e.printStackTrace();
	}
}



/**
 *  Inicializa a tela de consulta de pedidos/orcamentos
 *  
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward inicializar(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	String retorno = SUCCESS;
	
	HttpSession session = request.getSession();
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "filtroCodigoEmpresa" );
	
	PaginaBean paginaBean = new PaginaBean(); 
	paginaBean.setOrigem(request.getParameter("origem"));
	session.setAttribute("paginaBean", paginaBean);
	
	try {
		
		UserLoginBean userBean = (UserLoginBean)session.getAttribute("userBean");

		Integer idUnidadeNegocio = new Integer( userBean.getUnidadeNegocio() );
		
		EmpresaBC empresaBC = new EmpresaBC();
		ListaEmpresasBean listaEmpresasBean = empresaBC.getListaEmpresas( idUnidadeNegocio );
		VendedorBC vendedorBC = new VendedorBC();
		ListaVendedoresBean listaVendedoresBean = null;
		listaVendedoresBean = vendedorBC.getListaVendedores(userBean);
		
		session.setAttribute("listaEmpresasBean", listaEmpresasBean);
		session.setAttribute("listaVendedoresBean", listaVendedoresBean);
		
				
		FiltroPagamentoFaturaBean filtroPagamentoFaturaBean = new FiltroPagamentoFaturaBean(  );
		Integer filtroCodigoEmpresaDefault = new Integer( userBean.getEmpresa() );
		filtroPagamentoFaturaBean.setFiltroCodigoEmpresa( filtroCodigoEmpresaDefault );
		session.setAttribute("filtroPagamentoFaturaBean", filtroPagamentoFaturaBean );
		
		session.setAttribute( "listaPagamentoFaturaBean", new ListaPagamentoFaturaBean() );
		session.setAttribute( "quantidadeListaTotalPedidos", new Integer( 0 ) );
		
		MenuTools.disableMenu( session ); // 20070726 - evanildo m batista: desabilita o menu
		
	}catch( CommerceException e ){
		request.setAttribute( COMMERCE_EXCEPTION, e );
		retorno = ERROR;
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}




/**
 * Este método foi feito especificamente para retorno da consulta de histórico de clientes
 * Rute - 20070601
 * 
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward voltarTelaOutros(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	HttpSession session = request.getSession();
	
	PaginaBean paginaBean = (PaginaBean)session.getAttribute("paginaBean");
	
	String retorno = paginaBean.getOrigem();
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	
	FocoBean focoBean = new FocoBean( "codigoEmpresa" );
	
	try {
		
		session.removeAttribute( "pedidoVendaBean" );
		
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
}	






/**
 * Sai da tela de consulta de pedidos/orcamentos
 *  
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward sair(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	String retorno = PRINCIPAL;
	
	HttpSession session = request.getSession();
	
	PaginaBean paginaBean = (PaginaBean)session.getAttribute("paginaBean");
	
	if( paginaBean != null && paginaBean.getOrigem() != null && "painelVendedor".equals(paginaBean.getOrigem())){
		retorno = "painelVendedor";
	}
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "codigoPedido" );
	
	try {
		
		// Remove os atributos setados na sessao
		session.removeAttribute( "pagamentoFaturaBean" );
		session.removeAttribute( "paginaBean" );
		session.removeAttribute( "listaEmpresasBean" );
		session.removeAttribute( "listaVendedoresBean" );
		session.removeAttribute( "supervisorPedidoVenda" );
		
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}





/**
 * Altera os dados do pagamento/fatura/OFF, como a data de validade
 *  
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward alterarDadosPagamentoFatura(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	String retorno = PAGAMENTO_FATURA;
	
	HttpSession session = request.getSession();
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "nrDocumento" );
	
	try {
		
		DynaActionForm dForm = (DynaActionForm)form;
		
		String dataPagamentoFormatada = dForm.get( "dataPagamentoFormatada" ).toString();
		if( dataPagamentoFormatada == null || dataPagamentoFormatada.trim().equals( "" ) ) {
			throw new InvalidException( "comum.mensagem.obrigatorio.data.validade" );
		}
		
		Calendario cal = new Calendario();
		Date dataPagamento = cal.converterToDate( dataPagamentoFormatada );
		
		UserLoginBean userLoginBean = (UserLoginBean)session.getAttribute("userBean");
		
		PagamentoFaturaBean pagamentoFaturaBean = (PagamentoFaturaBean)session.getAttribute("pagamentoFaturaBean");
		Long idDivida = new Long( pagamentoFaturaBean.getNrDocumento() );
		Integer idEmpresa = new Integer( pagamentoFaturaBean.getVendedorBean().getEmpresa() );
		
		PagamentoFaturaBC pagamentoFaturaBC = new PagamentoFaturaBC();
		pagamentoFaturaBC.alterarDadosPagamentoFatura( userLoginBean, idEmpresa, idDivida, dataPagamento );
		
		pagamentoFaturaBean.setDataPagamento( dataPagamento );
		
	}catch( InvalidException e ){
		validacaoBean.setMensagem( messageResources.getMessage( e.getMessage(), e.getArgs() ) );
	}catch( CommerceException e ){
		validacaoBean.setMensagem( e.getMessage() );
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}




/**
 * Busca, na tela de clientes, o cliente a filtrar na tela de consulta de pedidos/orcamentos
 *  
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward buscarClienteFromTelaCliente(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	String retorno = "buscarClienteFromTelaCliente";
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "codigoCliente" );
	
	HttpSession session = request.getSession();
	
	try {
		
		this.carregarDadosFiltroPagamento( session, (DynaActionForm)form, new Boolean( true ) );
		session.setAttribute( "origemSelecaoCliente", "alterarClienteFromTelaClienteToPagamentoFatura" );
		
	}catch( InvalidException e ){
		validacaoBean.setMensagem( messageResources.getMessage( e.getMessage(), e.getArgs() ) );
		retorno = SUCCESS;
	}catch( CommerceException e ){
		request.setAttribute( COMMERCE_EXCEPTION, e );
		retorno = ERROR;
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}

/**
 * Altera, a partir da tela de clientes, o cliente a filtrar na tela de consulta de pedidos/orcamentos
 *  
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward alterarClienteFromTelaCliente(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	HttpSession session = request.getSession();
	Long codigoCliente = (Long)session.getAttribute( "codigoClienteSelecionado" );
	//String tipoPessoa = (String)session.getAttribute("tipoPessoa");
	if( codigoCliente != null && codigoCliente.longValue() >= 0 ) {
		
		session.removeAttribute( "codigoClienteSelecionado" );
		
		return alterarCliente_executar( codigoCliente, /*tipoPessoa,*/ mapping, form, request, response );
		
	}else {
		
		String retorno = SUCCESS;
		ValidacaoBean validacaoBean = new ValidacaoBean(  );
		FocoBean focoBean = new FocoBean( "filtroCodigoCliente" );
		
		return retornar( mapping, request, validacaoBean, focoBean, retorno );
		
	}
	
}

/**
 * Altera o cliente a filtrar na tela de consulta de pedidos/orcamentos
 *  
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward alterarCliente(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	String retorno = SUCCESS;
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "filtroCodigoCliente" );
	
	HttpSession session = request.getSession();
	
	try {
		
		DynaActionForm dForm = (DynaActionForm)form;
		
		String codCli = dForm.get("filtroCodigoCliente").toString().trim();
		
		this.carregarDadosFiltroPagamento( session, dForm, new Boolean( true ) );
		
		// Se o codigo do cliente for valido, consulta o mesmo. O codigo zero representa um cliente "consumidor"
		if( codCli != null && !codCli.equals("") ) {
			Long codigoCliente = null;
			//String tipoPessoa=null;
			try{
				codigoCliente = new Long( codCli );
			}catch( Exception e ){
				codigoCliente = null;
				throw new InvalidException( "comum.mensagem.invalido.codigo.cliente" );
			}
			
			if( codigoCliente != null ) {
				return this.alterarCliente_executar( codigoCliente,/*tipoPessoa,*/ mapping, form, request, response );
			}
			
		}else {
			FiltroPagamentoFaturaBean filtroPagamentoFaturaBean = (FiltroPagamentoFaturaBean)session.getAttribute( "filtroPagamentoFaturaBean" );
			filtroPagamentoFaturaBean.setFiltroCodigoCliente( null );
			filtroPagamentoFaturaBean.setFiltroNomeCliente( null );
		}
		
	}catch( InvalidException e ){
		validacaoBean.setMensagem( messageResources.getMessage( e.getMessage(), e.getArgs() ) );
	}catch( CommerceException e ){
		request.setAttribute( COMMERCE_EXCEPTION, e );
		retorno = ERROR;
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}



/**
 * Altera o cliente a filtrar na tela de consulta de pagamento de faturas Off
 * 
 * @param codigoCliente o codigo do cliente
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
private ActionForward alterarCliente_executar( Long codigoCliente, /*String tipoPessoa,*/ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	HttpSession session = request.getSession();
	
	String retorno = SUCCESS;
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "filtroCodigoCliente" );
	
	try {
		// Se o codigo do cliente for valido, consulta o mesmo. O codigo zero representa um cliente "consumidor"
		if( codigoCliente != null ) {
			
			ClienteBC clienteBC = new ClienteBC( );
			ClienteBean clienteBean = clienteBC.getClienteBySearchKey( codigoCliente );
			
			//ClienteBean clienteBean = clienteBC.getClienteFatura(  codigoCliente/*,tipoPessoa*/ );
			
			session.setAttribute( "cliente", clienteBean );
			
			
			// Se o cliente não existir, retorna mensagem de erro.
			if ( clienteBean!=null ){
				FiltroPagamentoFaturaBean filtroPagamentoFaturaBean= (FiltroPagamentoFaturaBean)session.getAttribute( "filtroPagamentoFaturaBean" );
				filtroPagamentoFaturaBean.setFiltroCodigoCliente( clienteBean.getCodigo() );
				filtroPagamentoFaturaBean.setFiltroNomeCliente( clienteBean.getNome() );
				filtroPagamentoFaturaBean.setFiltroIdConta( clienteBean.getIdConta() );
				
			}else{
				validacaoBean.setMensagem( messageResources.getMessage( "cliente.mensagem.naoEncontrado2", codigoCliente.toString() ) );
			}
			
		}else {
			validacaoBean.setMensagem( messageResources.getMessage( "comum.mensagem.invalido.codigo.cliente" ) );
		}
	}catch( CommerceException e ){
		validacaoBean.setMensagem( e.getMessage() );
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}



/**
 * Carrega os dados selecionados para filtrar a consulta de pedidos/orcamentos
 * 
 * @param session a sessao do usuario
 * @param dForm o formulario dinamico html
 * @param novaConsulta true, se for uma nova consulta, false, caso contrario
 * 
 * @throws InvalidException
 * @throws CommerceException
 */
private void carregarDadosFiltroPagamento( HttpSession session, DynaActionForm dForm, Boolean novaConsulta ) throws InvalidException, CommerceException {
	
	 Integer filtroCodigoEmpresa = null;
	 Integer filtroCodigoVendedor = null;
	 Date filtroDataPagamento=null;
	 Long filtroIdConta=null;
	 Long filtroIdOperador=null;
	 Long filtroNumPDV=null;
	 Long filtroNrDocumento=null;
	 Double filtroVlPagamento=null;
	
	
	// Se for uma nova consulta, os dados do filtro devem ser atualizados
	if( novaConsulta != null && novaConsulta.booleanValue() ){
		
		filtroCodigoEmpresa = (Integer)dForm.get("filtroCodigoEmpresa");
		
		String codVendedor = dForm.get("filtroCodigoVendedor").toString().trim();
		if( !codVendedor.equals( "" ) ) {
			try {
				filtroCodigoVendedor = Integer.valueOf( codVendedor );
			} catch (Exception e) {
				filtroCodigoVendedor = null;
				
			}
			
		}
		
		

		String strDataP = dForm.get("filtroDataPagamentoFormatado").toString().trim();
		strDataP = strDataP.equals( "" ) ? null : strDataP;
		if( strDataP != null ) {
			Calendario cal = new Calendario();
			filtroDataPagamento = new java.sql.Date( cal.converterToDate( strDataP ).getTime() );
		}
		
		
		
		filtroIdConta = (Long)dForm.get("filtroIdConta");
		filtroIdConta = ( filtroIdConta != null && filtroIdConta.longValue() > 0 ) ? filtroIdConta : null;
		
		filtroIdOperador = (Long)dForm.get("filtroIdOperador");
		filtroIdOperador = ( filtroIdOperador != null && filtroIdOperador.longValue() > 0 ) ? filtroIdOperador : null;
		
		
		
		
		filtroNumPDV = (Long)dForm.get("filtroNumPDV");
		filtroNumPDV = ( filtroNumPDV != null && filtroNumPDV.longValue() > 0 ) ? filtroNumPDV : null;
	
		filtroNrDocumento = (Long)dForm.get("filtroNrDocumento");
		filtroNrDocumento = ( filtroNrDocumento != null && filtroNrDocumento.longValue() > 0 ) ? filtroNrDocumento : null;
	
		filtroVlPagamento = (Double)dForm.get("filtroVlPagamento");
		filtroVlPagamento = ( filtroVlPagamento != null && filtroVlPagamento.longValue() > 0 ) ? filtroVlPagamento : null;
	
		
		FiltroPagamentoFaturaBean filtroPagamentoFaturaBean = (FiltroPagamentoFaturaBean)session.getAttribute( "filtroPedidoVendaBean" );
		if( filtroPagamentoFaturaBean != null ){
			
			filtroPagamentoFaturaBean.setFiltroCodigoEmpresa( filtroCodigoEmpresa );
			filtroPagamentoFaturaBean.setFiltroCodigoVendedor( filtroCodigoVendedor );
			filtroPagamentoFaturaBean.setFiltroIdConta( filtroIdConta );
			filtroPagamentoFaturaBean.setFiltroIdOperador( filtroIdOperador );
			filtroPagamentoFaturaBean.setFiltroDataPagamento( filtroDataPagamento );
			filtroPagamentoFaturaBean.setFiltroNumPDV( filtroNumPDV );
			filtroPagamentoFaturaBean.setFiltroNrDocumento(filtroNrDocumento);
			filtroPagamentoFaturaBean.setFiltroVlPagamento(filtroVlPagamento);
		
		
		
		}
		
	}
	
}

/**
 * Faz o tratamento necessario antes de retornar
 * 
 * @param mapping informacao de mapeamento da requisicao
 * @param request a requisicao http
 * @param validacaoBean a validacao a exibir na pagina
 * @param focoBean o campo a receber o foco
 * @param retorno a pagina solicitada para retorno
 * 
 * @return a tela de retorno
 */
private ActionForward retornar( ActionMapping mapping, HttpServletRequest request, ValidacaoBean validacaoBean, FocoBean focoBean, String retorno ) {
	
	request.setAttribute("validacaoBean", validacaoBean);
	request.setAttribute( "focoBean", focoBean );
	if( retorno.equals( ERROR ) || retorno.equals( PRINCIPAL ) || retorno.equals( DEVOLUCAO_PRODUTO_CONFIRMADA ) ){
		MenuTools.enableMenu( request.getSession() );
	}
	
	return mapping.findForward( retorno );
	
}

/**
 * Retorna o numero da pagina da listagem de itens do estoque
 * 
 * @param request a requisicao http
 * 
 * @return o numero da pagina referente a paginacao da lista de pedidos/orcamentos
 */
private Integer getNumeroPaginacao( HttpServletRequest request ) {
	final String tableId = "element";
	String page = request.getParameter( new ParamEncoder( tableId ).encodeParameterName(TableTagParameters.PARAMETER_PAGE) );
	return ( page != null ? new Integer(page) : new Integer( 1 ) );
}




/**
 * Grava o pagamento na fonte de dados
 *
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward salvar(UserLoginBean userLoginBean,Integer idEmpresa,Long idDivida,Date dataValidade,
		ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) 
throws Exception {
	
	String retorno = PAGAMENTO_FATURA;
	
	HttpSession session = request.getSession();
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "nrDocumento" );
	
	try {
		
		DynaActionForm dForm = (DynaActionForm)form;
		
		this.carregarDadosFiltroPagamento( session, dForm, new Boolean( true ));
		
		PagamentoFaturaBean pagamentoFaturaBean = (PagamentoFaturaBean)session.getAttribute( "nrDocumento" );
		
		PagamentoFaturaBC pagamentoFaturaBC = new PagamentoFaturaBC( );
		pagamentoFaturaBC.salvarDados(userLoginBean,  idEmpresa,  idDivida,  dataValidade);
		
		Long idCliente = pagamentoFaturaBean.getCodigoCliente();

//

this.alterarCliente_executar(  idCliente,mapping, form, request, response );
		
		// Limpa os campos do endereco para adicionar um novo
		return this.novoPagamento( mapping, form, request, response );
		
	}catch( InvalidException e ){
		validacaoBean.setMensagem( messageResources.getMessage( e.getMessage(), e.getArgs() ) );
	}catch( CommerceException e ){
		validacaoBean.setMensagem( e.getMessage() != null ? e.getMessage() : "null" );
	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}


/**
 * Limpa todos os campos do pagamento/fatura e inicia novos objetos para comecar um novo pagamento
 *
 * @param mapping informacao de mapeamento da requisicao
 * @param form o formulario html
 * @param request a requisicao http
 * @param response a resposta http
 * 
 * @return o retorno para a pagina solicitada
 * 
 * @throws Exception
 */
public ActionForward novoPagamento(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
	
	String retorno = PAGAMENTO_FATURA;
	
	HttpSession session = request.getSession();
	
	ValidacaoBean validacaoBean = new ValidacaoBean(  );
	FocoBean focoBean = new FocoBean( "nrDocumento" );
	
	try {
		
		session.setAttribute( "pagamentoFatura", new PagamentoFaturaBean() );

	}catch( Exception e ){
		request.setAttribute( COMMERCE_EXCEPTION, new CommerceException( e.getMessage() ) );
		retorno = ERROR;
	}
	
	return retornar( mapping, request, validacaoBean, focoBean, retorno );
	
}

}

Agora vem o meu método numa classe DB:

/**
* Altera dados do pagamento como a data de validade do mesmo
*
* @param userLoginBean o usuario logado na aplicacao
* @param idEmpresa a empresa do pedido/orcamento
* @param idPedidoVendaMultiplo o ID do pedido/orcamento multiplo
* @param dataValidade a data de validade do pedido/orcamento
*
* @throws CommerceException
*/
public void alterarDadosPagamentoFatura( UserLoginBean userLoginBean, Integer idEmpresa, Long idDivida, Date dataValidade ) throws CommerceException {

Connection con = null;
		PreparedStatement ps = null;
		
			
			StringBuffer query = new StringBuffer();
			query.append( "INSERT INTO PAGTO_TITULOS_OFF ( ID_DIVIDA, DT_LANCAMENTO, VL_RECEB ) " );
			query.append( "VALUES( ?, ?, ? ) " );
		
			try{
				
				con = super.getConnection();
			
				super.closeObjetosConexao( ps );
				ps = con.prepareStatement( query.toString() );
			
				ps.setInt( 1, userLoginBean.getUnidadeNegocio() );
				ps.setInt( 2, idEmpresa.intValue() );
				ps.setLong( 3, idDivida.longValue() );
				ps.setDate( 4,  new java.sql.Date( dataValidade.getTime() ) );
			
				ps.executeUpdate();
			
	
			
			} catch (SQLException e) {
			String mensagem = null;
			if( e.getErrorCode() == 20001 ){
				mensagem = CommerceException.getProcedureMessage( e.getMessage() );
			}else {
				mensagem = e.getMessage();
			}
			throw new CommerceException( mensagem, e.getErrorCode() );
		} catch (Exception e) {
			throw new CommerceException( e.getMessage() );
		} finally {
			super.closeObjetosConexao( con, ps );
		}
		
	}
		



	/**
	 * Salva o pagamento
	 * 
	 * @param clienteBean o cliente a salvar
	 * @param enderecoClienteBean o endereco do cliente a salvar
	 * 
	 * @throws InvalidException
	 * @throws CommerceException
	 */
	public void salvarDados(UserLoginBean userLoginBean, Integer idEmpresa, Long idDivida, Date dataValidade)throws InvalidException, CommerceException {
		
		Connection con = null;
		PreparedStatement ps = null;
	
		StringBuffer query = new StringBuffer();
		query.append( "INSERT INTO PAGTO_TITULOS_OFF ( ID_DIVIDA, DT_LANCAMENTO, VL_RECEB ) " );
		query.append( "VALUES( ?, ?, ? ) " );
		
		
		try {
			
			con = super.getConnection();
			
			super.closeObjetosConexao( ps );
			ps = con.prepareStatement( query.toString() );
		
			ps.setInt( 1, userLoginBean.getUnidadeNegocio() );
			ps.setInt( 2, idEmpresa.intValue() );
			ps.setLong( 3, idDivida.longValue() );
			ps.setDate( 4,  new java.sql.Date( dataValidade.getTime() ) );
		
			ps.executeUpdate();
		

			
			con.commit();
			
		} catch ( SQLException e ) {
			
			try{
				con.rollback();
			}catch( SQLException e1 ){
				e1.printStackTrace();
			}
			
			String mensagem = null;
			if( e.getErrorCode() == 20001 ){
				mensagem = CommerceException.getProcedureMessage( e.getMessage() );
			}else {
				mensagem = e.getMessage();
			}
			throw new CommerceException( mensagem, e.getErrorCode() );
			
		} catch ( CommerceException e ) {
			
			try{
				con.rollback();
			}catch( SQLException e1 ){
				e1.printStackTrace();
			}
			throw e;
			
		} catch ( Exception e ) {
			
			try{
				con.rollback();
			}catch( SQLException e1 ){
				e1.printStackTrace();
			}
			throw new CommerceException( e.getMessage() );
			
		} finally {
			super.closeObjetosConexao( con, ps );
		}
		
	}

Nesse abaixo está o meu JSP:

<%@ taglib uri="/WEB-INF/taglib/struts-html.tld" prefix=“html” %>
<%@ taglib uri="/WEB-INF/taglib/struts-logic.tld" prefix=“logic” %>
<%@ taglib uri="/WEB-INF/taglib/struts-bean.tld" prefix=“bean” %>
<%@ taglib uri="/WEB-INF/taglib/displaytag.tld" prefix=“display” %>

<html:html locale=“true”>

<%@include file="comum/defaulttag.jspf"%>
<script language="JavaScript">
      function buscar(){
      	formulario = document.forms[0];
        
        var valida1=true;
        var valida2=true;
        var valida3=true;
        var valida6=true;
          
        if( formulario.filtroCodigoEmpresa.value=='' || formulario.filtroCodigoEmpresa.value==0 )
          valida1=false;
        
        if( formulario.filtroCodigoVendedor.value=='' )
          valida2=false; // pode ter vendedor com codigo igual a zero

        if( formulario.filtroCodigoCliente.value=='' || formulario.filtroCodigoCliente.value==0 )
          valida3=false;
  
          
        if( formulario.filtroDataFinalFormatado.value=='' )
          valida6=false;
    
        
        if( valida1 || valida2 || valida3 ||  valida5 || valida6  ){
        	mostra('WaitBox');
    		sendCommand('buscarPedidos');
        }else{
            var msg = '<bean:message key="comum.mensagem.filtroPesquisa.naoSelecionado"/>';
        	if( confirm( msg ) ){
        		mostra('WaitBox');
	    		sendCommand('buscarPedidos');
        	}
        }
      
      }
      
      function buscarByChavePesquisa( chave ){
      	if( trim( chave ) != '' && chave > 0 ){
      		buscar();
      	}
      }
      
      function visualizarDetalhePedido( codPedido ){
      	formulario = document.forms[0];
      	formulario.codigoPedido.value=codPedido;
      	sendCommand( 'visualizarDetalhePedido' );
      }
      
	/*
	 * Responde a funcao da tecla F2
	 */
	function commandF2Key(){
	    sendCommand( 'buscarClienteFromTelaCliente' );
	}
      
</script>
<%@include file="comum/waitbox.jspf"%> <%@ include file="../jsp/menu.jsp" %>
<table border="0" cellspacing="0" cellpadding="0" class="tablePosition">
	<tr>
		<td colspan="4"><html:img srcKey="comum.imagem.barra.titulo.pagamento.fatura.off"/></td>
	</tr>
	<tr> 
		<td>
			<html:img srcKey="comum.imagem.barra.titulo.ponto" width="1" height="100%"/>
		</td>
	  	<td>&nbsp;</td>
	    <td>
	    
	    	<table width="950px" border="0" cellpadding="0" cellspacing="0" bordercolor="#000000">
				<tr class="defaultfont">
					
					<!-- Filtro Codigo Cliente --> 
					<td>
						<bean:message key="comum.vocabulo.cliente" /><br>
						<html:text name="filtroPagamentoFaturaBean" property="filtroCodigoCliente" onchange="sendCommand( 'alterarCliente' );" onfocus="nextfield='filtroNomeCliente'" styleClass="field-size-w075-right" />
						<html:text name="filtroPagamentoFaturaBean" property="filtroNomeCliente" readonly="true" onfocus="nextfield='filtroIdConta'" styleClass="field-size-w200" />
					
						<!-- <html : link href="../buscaCliente.do"> -->
						<html:link href="javascript:sendCommand( 'buscarClienteFromTelaCliente' );">
							<html:img srcKey="comum.imagem.botao.pesquisar.mini" titleKey="comum.mensagem.localizar.cliente" border="0" />
						</html:link>&nbsp;
					</td>
					
					
						<!-- Filtro Numero Conta -->
					<td>
						<bean:message key="comum.vocabulo.numero.conta" /><br>
						<html:text name="filtroPagamentoFaturaBean" property="filtroIdConta"  onfocus="nextfield='filtroCodigoVendedor'" styleClass="field-size-w120-right" />
					</td>
			
				 	<td rowspan="2" align="right">
				 		<html:link href="javascript:sendCommand('sair')">
						<html:img srcKey="comum.imagem.botao.sair" titleKey="comum.mensagem.botao.sair" border="0"/>
						</html:link>
				 	</td>
						
				</tr>
			</table>
			<br>
		</td>
		<td><html:img srcKey="comum.imagem.barra.titulo.ponto" width="1" height="100%"/></td>
	 </tr>
	 <tr> 
	    <td valign="top" colspan="4"><html:img srcKey="comum.imagem.barra"/></td>
	</tr>
</table>
<br>
<table border="0" cellspacing="0" cellpadding="0" class="tablePosition">
	<tr>
		<td colspan="4"><html:img srcKey="comum.imagem.barra.titulo.dados.carne"/></td>
		
	</tr>
	
		<tr>
		    <td>
	    	<html:img srcKey="comum.imagem.barra.titulo.ponto" width="1" height="100%"/>
	    </td>
	  	<td>&nbsp;</td>
	    <td>
		 	<table width="950px" border="0" cellpadding="0" cellspacing="0" bordercolor="#FF0000">
				<tr class="defaultfont">
			
					<!-- Filtro Vendedor -->
					<td colspan="4">
						<bean:message key="comum.vocabulo.vendedor"/><br>
					<html:text property="codVendedor" size="3" onchange="document.forms[0].filtroCodigoVendedor.value=this.value;" onfocus="nextfield='filtroSituacaoPedido'" styleClass="field-size-w075"/>
					<html:select name="filtroPagamentoFaturaBean" property="filtroCodigoVendedor" onchange="document.forms[0].codVendedor.value=this.value;" onfocus="nextfield='filtroCodigoEmpresa'" styleClass="field-size-w200">
					<option value=''></option>
					<html:optionsCollection name="listaVendedoresBean" property="lista" value="codigo" label="label"/>
					</html:select>
		 			</td>
				</tr>
			
				<!-- LINHA DE BAIXO -->
				
				<tr class="defaultfont">
					
					<!-- Filtro Empresa -->
					<td>
						<bean:message key="comum.vocabulo.filial"/><br>
						<html:select name="filtroPagamentoFaturaBean" property="filtroCodigoEmpresa" onfocus="nextfield='filtroIdOperador'" styleClass="field-size-w150">
						<html:optionsCollection name="listaEmpresasBean" property="lista" value="codigoEmpresa" label="label" />
						</html:select>
					</td>
					
					<!--Operador + PDV -->
					<td colspan="2">
						<bean:message key="comum.vocabulo.operador.pdv"/><br>
						<html:select name="filtroPagamentoFaturaBean" property="filtroIdOperador" onchange="document.forms[0].codVendedor.value=this.value;" onfocus="nextfield='filtroNrDocumento'" styleClass="field-size-w150">
						<option value=''></option>
						<html:optionsCollection name="listaVendedoresBean" property="lista" value="codigo" label="label"/>
						</html:select>
						 
					</td>
					
					<!-- Filtro Numero Fatura --> 
					<td>
						<bean:message key="comum.vocabulo.numero.fatura" /><br>
						<html:text name="filtroPagamentoFaturaBean" property="filtroNrDocumento"  onfocus="nextfield='filtroDataPagamento'" styleClass="field-size-w100" />
						
					</td>
					
					<!-- Filtro Data Pagamento -->
					<td>
						<bean:message key="comum.vocabulo.data.pagamento" /><br>
						<html:text name="filtroPagamentoFaturaBean" property="filtroDataPagamento" onfocus="nextfield='filtroVlPagamento'" size="10" maxlength="10" onblur="formatarData( this );"  styleClass="field-size-w150" />
					</td>
				 	
						<!-- Filtro Valor Recebido -->
					<td>
						<bean:message key="comum.vocabulo.valor.recebido" /><br>
						<html:text name="filtroPagamentoFaturaBean" property="filtroVlPagamento" onchange="buscarByChavePesquisa( this.value );" onfocus="nextfield='filtroCodigoCliente'" styleClass="field-size-w200" />
					</td>
						
					<td>
						<logic:present name="somenteLeitura">
						<html:img srcKey="comum.imagem.botao.gravar.disabled" titleKey="comum.mensagem.botao.gravar" border="0"/>
						</logic:present>
						<logic:notPresent name="somenteLeitura">
						<html:link href="javascript:sendCommand( 'salvar' );">
						<html:img srcKey="comum.imagem.botao.gravar" titleKey="comum.mensagem.botao.gravar" border="0"/>
						</html:link>&nbsp;&nbsp;
						</logic:notPresent>
					</td>
				 	
				 	
					<td>
						<logic:present name="somenteLeitura">
						<html:img srcKey="comum.imagem.botao.novo.cliente.disabled" titleKey="comum.mensagem.botao.novo.cliente" border="0" />
						</logic:present>
						<logic:notPresent name="somenteLeitura">
						<html:link href="javascript:sendCommand( 'novoCliente' );">
						<html:img srcKey="comum.imagem.botao.novo.cliente" titleKey="comum.mensagem.botao.novo.cliente" border="0" />
						</html:link>
						</logic:notPresent>
					</td>
					 	
				 	
				 	
				 	<td rowspan="2" align="right">
				 		<html:link href="javascript:sendCommand('sair')">
						<html:img srcKey="comum.imagem.botao.sair" titleKey="comum.mensagem.botao.sair" border="0"/>
						</html:link>
				 	</td>
			  </tr>
			
			</table>
		 </td>
		<td width="1" height="100%"><html:img srcKey="comum.imagem.barra.titulo.ponto" width="1" height="100%"/></td>
	 </tr>
	 <tr> 
	    <td valign="top" colspan="4"><html:img srcKey="comum.imagem.barra"/></td>
   </tr>
</table>
<br>

</html:form>

E por fim o Struts-Config:













<form-bean

name="pagamentoFaturaForm"
		
			type="org.apache.struts.action.DynaActionForm">
			<form-property name="method" type="java.lang.String" />
			<form-property name="campoInativo" type="java.lang.String" />
			<form-property name="filtroCodigoEmpresa" type="java.lang.Integer" />
			<form-property name="codVendedor" type="java.lang.String" />
			<form-property name="filtroCodigoVendedor" type="java.lang.String" />
			<form-property name="filtroCodigoCliente" type="java.lang.String" />
			<form-property name="filtroNomeCliente" type="java.lang.String" />
		    
			<form-property name="novaConsulta" type="java.lang.Boolean" />
			<form-property name="filtroDataPagamentoFormatado" type="java.lang.String" />
			<form-property name="filtroIdConta" type="java.lang.Long" />
			<form-property name="filtroIdOperador" type="java.lang.Long" />
			<form-property name="filtroNumPDV" type="java.lang.Long" />
			<form-property name="filtroNrDocumento" type="java.lang.Long" />
			<form-property name="filtroVlPagamento" type="java.lang.Double" />
			
	
	</form-bean>

Valeu pela atenção moçada…

herbertins

caraca dhasdhasasjkhdjkashdjkashkdhasklhdashdkjashd a

edita isso ai cara use as tags ai do guj para ficar melhor a leitura hehehe

abs

Zeed01

Bom dia Colegas !

Mãe do céu !

[]s

neohacker

Pra que tag "[code]", isso é pra amadores né?? :shock:

herbertins

Então tire a duvida dele

falows abs

Criado 22 de abril de 2008
Ultima resposta 22 de abr. de 2008
Respostas 10
Participantes 4