Olá pessoal, estou com uma grande dúvida num formulário de cadastro que estou criando, atualmente meu formulário tem um campo “Cod_orcamento” onde o usuário digita o código de um orçamento, logo ao lado deste campo tem um botão chamado “Carregar Dados Orçamento” que ao ser clicado chama a servlet chamada “ServletPesquisaOrcamentoVenda” que carrega dados do orçamento nos outros campos deste mesmo formulário. Acontece que o usuário vai precisar preencher mais alguns dados e clicar no botão “Enviar” que executa a servlet chamada “ServletVenda” que captura todos os dados dos campos e salvo no banco. Meu problema está em utilizar estas duas ACTIONS desses botões, atualmente a declaração da tag do meu JSP está assim: <form id="cadastro" name="venda" method="post" action="ServletPesquisaOrcamentoVenda"> Ou seja, executa apenas a consulta do evento do botão “Carregar Dados Orçamento”, sem ter como executar a ação do botão “Enviar” que chama a servlet “ServletVenda”. Qual a forma mais simples de fazer isto? Deve remover a action do meu form e chamar as servlets através do evento onclick de cada botão?? Abaixo minhas classes:
Minha ServletPesquisaOrcamentoVenda:
[code]package br.bmweb.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import br.bmweb.dao.PesquisaOrcamentoVendaDao;
import br.bmweb.pojo.Funcionario;
import br.bmweb.pojo.Venda;
/**
-
Servlet implementation class Venda
*/
public class ServletPesquisaOrcamentoVenda extends HttpServlet {
private static final long serialVersionUID = 1L;/**
-
@see HttpServlet#HttpServlet()
*/
public ServletPesquisaOrcamentoVenda() {
super();
// TODO Auto-generated constructor stub
}
/**
-
@see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
*/
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("Valor cod_orcamento na pesquisa: " + request.getParameter(“cod_orcamento”));
PrintWriter writer = response.getWriter();
HttpSession session = request.getSession(true);
PesquisaOrcamentoVendaDao pesquisa = new PesquisaOrcamentoVendaDao();
pesquisa.setFuncionario((Funcionario) (session.getAttribute(“funcionario”)));
List pesquisaVendaOrcamento;
try {
pesquisaVendaOrcamento = pesquisa.OrcamentoVenda(Integer.parseInt(request.getParameter(“cod_orcamento”)));
if(pesquisaVendaOrcamento.isEmpty()){writer.println("<SCRIPT language='JavaScript'> alert('Nenhum orçamento encontrado!!'); </SCRIPT>"); }else{ request.setAttribute("dadosOrcamento", pesquisaVendaOrcamento); request.getRequestDispatcher("Venda.jsp").forward(request, response); //writer.println("<SCRIPT language='JavaScript'> document.location=('Venda.jsp'); </SCRIPT>"); }}catch (SQLException e) {
<table style=width:“100%”;>");
writer
.print("<p align=“center”>Houve um erro ao tentar alterar o cliente! Tente novamente.
<a href=“javascript:history.back(1);”>Clique aqui para voltar.}catch (Exception e) {
<table style=width:“100%”;>");
e.printStackTrace();
writer
.print("<p align=“center”>Houve um erro! Por favor tente novamente.
<a href=“javascript:history.back(1);”>Clique aqui para voltar.
}
}
/**
- @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
/**
- @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
}[/code]
-
@see HttpServlet#HttpServlet()
Minha ServletVenda:
[code]package br.bmweb.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import br.bmweb.dao.PesquisaOrcamentoVendaDao;
import br.bmweb.pojo.Funcionario;
import br.bmweb.pojo.Venda;
/**
-
Servlet implementation class Venda
*/
public class ServletPesquisaOrcamentoVenda extends HttpServlet {
private static final long serialVersionUID = 1L;/**
- @see HttpServlet#HttpServlet()
*/
public ServletPesquisaOrcamentoVenda() {
super();
// TODO Auto-generated constructor stub
}
/**
-
@see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
*/
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("Valor cod_orcamento na pesquisa: " + request.getParameter(“cod_orcamento”));
PrintWriter writer = response.getWriter();
HttpSession session = request.getSession(true);
PesquisaOrcamentoVendaDao pesquisa = new PesquisaOrcamentoVendaDao();
pesquisa.setFuncionario((Funcionario) (session.getAttribute(“funcionario”)));
List pesquisaVendaOrcamento;
try {
pesquisaVendaOrcamento = pesquisa.OrcamentoVenda(Integer.parseInt(request.getParameter(“cod_orcamento”)));
if(pesquisaVendaOrcamento.isEmpty()){writer.println("<SCRIPT language='JavaScript'> alert('Nenhum orçamento encontrado!!'); </SCRIPT>"); }else{ request.setAttribute("dadosOrcamento", pesquisaVendaOrcamento); request.getRequestDispatcher("Venda.jsp").forward(request, response); //writer.println("<SCRIPT language='JavaScript'> document.location=('Venda.jsp'); </SCRIPT>"); }}catch (SQLException e) {
<table style=width:“100%”;>");
writer
.print("<p align=“center”>Houve um erro ao tentar alterar o cliente! Tente novamente.
<a href=“javascript:history.back(1);”>Clique aqui para voltar.}catch (Exception e) {
<table style=width:“100%”;>");
e.printStackTrace();
writer
.print("<p align=“center”>Houve um erro! Por favor tente novamente.
<a href=“javascript:history.back(1);”>Clique aqui para voltar.
}
}
/**
- @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
/**
- @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}
}[/code]
- @see HttpServlet#HttpServlet()
Meu JSP:
[code]<%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core”%>
<%@ page language=“java” contentType=“text/html; charset=ISO-8859-1”
pageEncoding=“ISO-8859-1”%>