Bom pessoal tenho a seguinte página:
<%@page import="java.text.DecimalFormat"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@page import="dao.JDBCClienteDAO"%>
<%@ page import="dao.FabricaConexao"%>
<%@ page import="java.sql.Connection"%>
<%@ page import="modelo.Cliente"%>
<%@ page import="java.text.*"%>
<%@ page import = "java.util.Date" %>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Brasil Iphone - Início</title>
<link rel="stylesheet" href="jquery.mobile-1.3.1/demos/css/themes/default/jquery.mobile-1.3.1.min.css" />
<link rel="stylesheet" href="jquery.mobile-1.3.1/demos/_assets/css/jqm-demos.css" />
<link rel="shortcut icon" href="jquery.mobile-1.3.1/demos/favicon.ico" />
<link type="text/css" rel="stylesheet" href="Brasil_Iphone_css.css" />
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans:300,400,700" />
<script src="jquery.mobile-1.3.1/demos/js/jquery.js"></script>
<script src="jquery.mobile-1.3.1/demos/_assets/js/index.html"></script>
<script src="jquery.mobile-1.3.1/demos/js/jquery.mobile-1.3.1.min.js"></script>
<link href="css/smoothness/jquery-ui-1.10.0.custom.min.css" type="text/css" rel="stylesheet"/>
<script src="js/jquery-ui-1.10.0.custom.min.js" type="text/javascript"></script>
<script type="text/javascript" src="media/js/jquery.js"></script>
<script type="text/javascript" src="media/js/jquery.dataTables.min.js"></script>
<link href="media/css/demo_table.css" type="text/css" rel="stylesheet" media="screen"/>
<style type="text/css">
div#corpo{margin: 0 auto; padding: 0; width: 1510px; background:white; height: 350px;}
</style>
<script type="text/javascript" >
$(document).ready( function() {
$('#tabela1').dataTable({
"bPaginate": true,
"bProcessing": true,
"bJQueryUI": true
});
} );
</script>
</head>
<body>
<!----------------------------------------------------------------------MENU----------------------------------------------------->
<div data-role="header">
<div class="ui-icon-alt">
<!---------------------------------------------------------------------BOTOES---------------------------------------------------->
<a href="http://localhost:8080/BrasilIphone/BrasilIphone_cliente.jsp" data-role="button" data-icon="home" data-theme="a" data-inline="true" id="botao1">Início</a>
<a href="#popupNested" data-rel="popup" data-role="button" data-inline="true" data-icon="bars" data-theme="a" data-transition="slidedown" id="botao1">Menu
<a href="#popupMenu" data-rel="popup" data-role="button" data-inline="true" data-transition="slidedown" data-icon="gear" data-theme="a" id="botao2">Opções</a>
<a href="#popupLogin" data-rel="popup" data-position-to="window" data-role="button" data-icon="check" data-theme="a" data-transition="flip" id="botao2">Login</a>
<!---------------------------------------------------------------------LOGO------------------------------------------------------>
<div class="div_logo" align="center">
<img src="imgs/logoBrasil_iPhone (2).png" width="283" height="81"/>
</div>
</div>
</div>
<!---------------------------------------------------------------------CONTEUDO-------------------------------------------------->
<br />
<br />
<br />
<%
FabricaConexao fabrica = new FabricaConexao();
Connection conexao = fabrica.fazConexao();
JDBCClienteDAO dao = new JDBCClienteDAO(conexao);
java.util.List<Cliente> clientes = dao.listarTodos();
fabrica.fecharConexao();
%>
<div style=" overflow:scroll;">
<div id="corpo">
<a href="#popupCadastro" data-rel="popup" data-position-to="window" data-role="button" data-icon="check" data-theme="a" data-transition="flip" id="botao2">Cadastrar</a>
<table cellspacing="0" cellpadding="0" class="display" id="tabela1">
<thead>
<tr>
<th>Código</th>
<th>Nome</th>
<th>Endereço</th>
<th>Cidade</th>
<th>Complemento</th>
<th>Cep</th>
<th>Rg</th>
<th>Cpf</th>
<th>Uf</th>
<th>Telefone</th>
<th>Celular</th>
<th>Email</th>
<th>Data</th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<%
for (Cliente c : clientes) {
%>
<tr>
<td><%=c.getCodigo()%></td>
<td><%=c.getNome()%></td>
<td><%=c.getEndereco()%></td>
<td><%=c.getCidade()%></td>
<td><%=c.getComplemento()%></td>
<td><%=c.getCep()%></td>
<td><%=c.getRg()%></td>
<td><%=c.getCpf()%></td>
<td><%=c.getUf()%></td>
<td><%=c.getTel1()%></td>
<td><%=c.getTel2()%></td>
<td><%=c.getEmail()%></td>
<%
String date = new SimpleDateFormat("dd/MM/yyyy").format(c
.getDatanasc());
%>
<td><%=date%></td>
<td><a href="#popupAlterar" data-rel="popup" onclick= "<% String cid = c.getCidade(); int cod = c.getCodigo(); String cep = c.getCep(); String comp = c.getComplemento(); String cpf = c.getCpf(); Date data= c.getDatanasc(); String email = c.getEmail(); String end= c.getEndereco(); String nome= c.getNome(); String rg= c.getRg(); String tel =c.getTel1(); String cel = c.getTel2(); String uf = c.getUf(); %>" data-position-to="window" data-transition="flip" id="botao2">Alterar</a></td>
<td><a href="excluirCliente.jsp?codigo=<%=c.getCodigo()%>"
target="_blank">Excluir</a></td>
<td><a
href="Relatorio_cliente.jsp?codigo=<%=c.getCodigo()%> "
target="_blank">Serviços</a></td>
</tr>
<div data-role="popup" id="popupMenu" data-theme="c">
<div data-role="popup" id="popupAlterar" data-theme="a" class="ui-corner-all" data-overlay-theme="a" style="max-width:400px;">
<form name="frm_cliente" action="inserirCliente" method="post">
<div style="padding:10px 20px;">
<h3>Faça o Login:</h3>
<label for="nome" class="ui-hidden-accessible">Nome:</label>
<input type="text" name="nome" id="nome" value="<%= nome %>" data-theme="b">
<label for="endereco" class="ui-hidden-accessible">Endereço:</label>
<input type="text" name="endereco" id="endereco" value="<%= end %>" data-theme="b">
<label for="cidade" class="ui-hidden-accessible">Cidade:</label>
<input type="text" name="cidade" id="cidade" value="<%= cid %>" data-theme="b">
<label for="uf" class="ui-hidden-accessible">UF:</label>
<input type="text" name="uf" id="uf" value="<%= uf %>" placeholder="uf" data-theme="b">
<label for="complemento" class="ui-hidden-accessible">Complemento:</label>
<input type="text" name="complemento" id="complemento" value="<%= comp %>" data-theme="b">
<label for="cep" class="ui-hidden-accessible">CEP:</label>
<input type="text" name="cep" id="cep" value="<%= cep %>" data-theme="b">
<label for="rg" class="ui-hidden-accessible">RG:</label>
<input type="text" name="rg" id="endereco" value="<%= rg %>" data-theme="b">
<label for="cpf" class="ui-hidden-accessible">CPF:</label>
<input type="text" name="cpf" id="cpf" value="<%= cpf %>" data-theme="b">
<label for="tel" class="ui-hidden-accessible">Telefone:</label>
<input type="text" name="tel" id="tel" value="<%= tel %>" data-theme="b">
<label for="cel" class="ui-hidden-accessible">Celular:</label>
<input type="text" name="cel" id="cel" value="<%= cel %>" data-theme="b">
<label for="datanasc" class="ui-hidden-accessible">Data de nascimento:</label>
<input type="text" name="datanasc" id="datanasc" value="<%= data %>" data-theme="b">
<label for="email" class="ui-hidden-accessible">Email:</label>
<input type="text" name="email" id="email" value="<%= email %>" data-theme="b">
<button type="submit" data-theme="a" data-icon="check">Salvar</button>
</div>
</form>
</div>
</div>
<%
}
%>
</tbody>
</table>
</div>
</div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<!-------------------------------------------------------------------RODAPE------------------------------------------------------>
<div class="jqm-fullwidth ui-bar-a" style="border:none; padding:10px 15px; overflow:auto;" data-ajax-warning="true">
<h1 style="margin:0 0 .3em; padding:0; font-size:1em; font-weight: bold; color:#fff; text-align:center">Brasil Iphone - 2013</h1>
<p style="margin:0; font-size:.9em; color:#fff; text-align:center">
<br />
</p>
</div>
<!-------------------------------------------------------------------FIM_DO_CORPO_DO_SITE---------------------------------------->
<!-------------------------------------------------------------------FUNÇOES----------------------------------------------------->
<!-------------------------------------------------------------------popup opções------------------------------------------------>
<div data-role="popup" id="popupMenu" data-theme="a">
<ul data-role="listview" data-ajax="false" data-inset="true" style="min-width:200px;" data-theme="d">
<li data-role="divider" data-theme="a"></li>
<li><a href="http://teste_ajuda.html">Ajuda</a></li>
<li><a href="#">Sair</a></li>
</ul>
</div>
<!-------------------------------------------------------------------popup login------------------------------------------------->
<div data-role="popup" id="popupMenu" data-theme="c">
<div data-role="popup" id="popupLogin" data-theme="a" class="ui-corner-all" data-overlay-theme="a" style="max-width:400px;">
<form name="frm_login">
<div style="padding:10px 20px;">
<h3>Faça o Login:</h3>
<label for="un" class="ui-hidden-accessible">Usuário:</label>
<input type="text" name="user" id="un" value="" placeholder="usuario" data-theme="b">
<label for="pw" class="ui-hidden-accessible">Senha:</label>
<input type="password" name="pass" id="pw" value="" placeholder="senha" data-theme="b">
<button type="submit" data-theme="a" data-icon="check">Logar</button>
</div>
</form>
</div>
</div>
<div data-role="popup" id="popupMenu" data-theme="c">
<div data-role="popup" id="popupCadastro" data-theme="a" class="ui-corner-all" data-overlay-theme="a" style="max-width:400px;">
<form name="frm_cliente" action="inserirCliente" method="post">
<div style="padding:10px 20px;">
<h3>Faça o Login:</h3>
<label for="nome" class="ui-hidden-accessible">Nome:</label>
<input type="text" name="nome" id="nome" value="" placeholder="nome" data-theme="b">
<label for="endereco" class="ui-hidden-accessible">Endereço:</label>
<input type="text" name="endereco" id="endereco" value="" placeholder="endereço" data-theme="b">
<label for="cidade" class="ui-hidden-accessible">Cidade:</label>
<input type="text" name="cidade" id="cidade" value="" placeholder="cidade" data-theme="b">
<label for="uf" class="ui-hidden-accessible">UF:</label>
<input type="text" name="uf" id="uf" value="" placeholder="uf" data-theme="b">
<label for="complemento" class="ui-hidden-accessible">Complemento:</label>
<input type="text" name="complemento" id="complemento" value="" placeholder="complemento" data-theme="b">
<label for="cep" class="ui-hidden-accessible">CEP:</label>
<input type="text" name="cep" id="cep" value="" placeholder="cep" data-theme="b">
<label for="rg" class="ui-hidden-accessible">RG:</label>
<input type="text" name="rg" id="endereco" value="" placeholder="rg" data-theme="b">
<label for="cpf" class="ui-hidden-accessible">CPF:</label>
<input type="text" name="cpf" id="cpf" value="" placeholder="cpf" data-theme="b">
<label for="tel" class="ui-hidden-accessible">Telefone:</label>
<input type="text" name="tel" id="tel" value="" placeholder="telefone" data-theme="b">
<label for="cel" class="ui-hidden-accessible">Celular:</label>
<input type="text" name="cel" id="cel" value="" placeholder="celular" data-theme="b">
<label for="datanasc" class="ui-hidden-accessible">Data de nascimento:</label>
<input type="text" name="datanasc" id="datanasc" value="" placeholder="data de nascimento" data-theme="b">
<label for="email" class="ui-hidden-accessible">Email:</label>
<input type="text" name="email" id="email" value="" placeholder="email" data-theme="b">
<button type="submit" data-theme="a" data-icon="check">Salvar</button>
</div>
</form>
</div>
</div>
<!------------------------------------------------------------------popup menu-------------------------------------------------->
<div data-role="popup" id="popupNested" data-theme="none">
<div data-role="collapsible-set" data-theme="a" data-content-theme="c" data-collapsed-icon="arrow-r" data-expanded-icon="arrow-d" style="margin:0; width:250px;">
<ul data-role="listview" data-inset="true">
<li data-role="divider" data-theme="a">
</li>
<li><a href="http://localhost:8080/BrasilIphone/BrasilIphone_cliente.jsp" data-rel="dialog">Clientes</a></li>
<li><a href="http://localhost:8080/BrasilIphone/BrasilIphone_funcionario.jsp" data-rel="dialog">Funcionários</a></li>
<li><a href="#" data-rel="dialog">Produtos</a></li>
<li><a href="#" data-rel="dialog">Serviços</a></li>
<li><a href="#" data-rel="dialog">Usuários</a></li>
</ul>
</div>
</div>
<!---------------------------------------------------------------FIM------------------------------------------------------------>
</body>
</html>
Quando preencho meu formulário de cadastro e clico no meu botão salvar ele chama a seguinte servlet:
package ação;
import java.io.IOException;
import java.sql.Connection;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import modelo.Cliente;
import dao.FabricaConexao;
import dao.JDBCClienteDAO;
/**
* Servlet implementation class inserirCliente
*/
@WebServlet("/inserirCliente")
public class inserirCliente extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public inserirCliente() {
super();
// TODO Auto-generated constructor stub
}
/**
* @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
System.out.println("Teste");
String nome = request.getParameter("nome");
String endereco = request.getParameter("endereco");
String cidade = request.getParameter("cidade");
String complemento = request.getParameter("complemento");
String cep = request.getParameter("cep");
String rg = request.getParameter("rg");
String cpf = request.getParameter("cpf");
String uf = request.getParameter("uf");
String telefone1 = request.getParameter("tel");
String telefone2 = request.getParameter("cel");
String email = request.getParameter("email");
String data =request.getParameter("datanasc");
System.out.println("Teste"+nome);
System.out.println(data);
Date date = null;
try {
date = new SimpleDateFormat("dd/MM/yyyy").parse(data);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Cliente novoCliente = new Cliente();
novoCliente.setCep(cep);
novoCliente.setCidade(cidade);
novoCliente.setComplemento(complemento);
novoCliente.setCpf(cpf);
novoCliente.setEmail(email);
novoCliente.setEndereco(endereco);
novoCliente.setNome(nome);
novoCliente.setRg(rg);
novoCliente.setTel1(telefone1);
novoCliente.setTel2(telefone2);
novoCliente.setUf(uf);
novoCliente.setDatanasc(date);
FabricaConexao fabrica = new FabricaConexao();
Connection conexao = fabrica.fazConexao();
JDBCClienteDAO dao = new JDBCClienteDAO(conexao);
dao.inserir(novoCliente);
//response.sendRedirect( "BrasilIphone_cliente.jsp");
String r= response.encodeRedirectURL("http://localhost:8080/BrasilIphone/BrasilIphone_cliente.jsp");
response.sendRedirect(r);
}
}
Como vcs podem ver, nessa linha
String r= response.encodeRedirectURL("http://localhost:8080/BrasilIphone/BrasilIphone_cliente.jsp");
response.sendRedirect(r);
Ele redireciona para a página BrasilIphone_cliente ( que é a tela onde ele preencheu o formulário) . Eu sei que poderia ter feito sem encode, mas dps de tantas tentativa achei válido tentar. O que ocorre é que ele redireciona a página normalmente mas o JQuery que eu aplico na minha tabela some, o que eu percebi é ao invés dele fazer o redirect e deixar na barra de endereço o endereço que eu mandei (“http://localhost:8080/BrasilIphone/BrasilIphone_cliente.jsp”) ele deixa o endereço da servlet (“http://localhost:8080/BrasilIphone/inserirCliente”). Alguém poderia me ajudar a resolver isso?