Estou com um problema de Acentuação. Tem hora que a centuação da certo e tem hora que não da
Possuo uma pagina JSP que faz busca.
Seu funcionamento é o seguinte:
Se busca por muitos dados:
… Chamar um Java que faz o acesso ao BD
… Receber uma Lista com os dados.
…Qdo ela recebe essa lista, monta uma tabela e imprimi os dados [color=red]com erro de acentuação[/color]
Se a busca é por um dado
… Chama o mesmo Java só que serviço difente
… Recebe uma Estrutura
… Redireciona os dados dessa estrutura via Browser para uma pagina onde os dados serão impressos com [color=red]com a acentuação certa[/color]
O que eu gostaria de saber é porque em uma situação acentuação sai certa e na outra não???
Ja verifiquei as configurações da pagina e as duas possuem o seguinte:
As duas buscas chamam o java e recebe o resultado.
Só que no casa de busca por Grupo (recebe uma lista) a propria pagina imprimi. E o caso de busca por ID (recebe uma estrutura) redireciona os dados para uma outra pagina
Olha o meu código:
%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@ page import="java.util.List"%>
<%@ page import="java.util.ArrayList" %>
<%--
Beans
--%>
<jsp:useBean id="td" scope="page" class="TipoDado.TipoDoDado" />
<jsp:useBean id="struct" scope="page" class="TipoDado.TipoDadoStruct" />
<html>
<head>
<meta http-equiv="Content-Type" content="text/xml; charset=iso-8859-1" >
</HEAD>
<link rel="stylesheet" href="folha.css" type="text/css">
<body background="images/fundo.jpg" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgproperties="fixed">
<%
// Declaração de Variaveis
String Grupo=null, desc=null, msg, Id=null;
int Indice=0;
boolean retorno=false;
List lst = new ArrayList();
TipoDado.TipoDadoStruct est= new TipoDado.TipoDadoStruct();
// Le os dados Grupo ou ID
Grupo= request.getParameter("grupo");
Id= request.getParameter("id");
//***** Busca por grupo *****
if (Grupo!=null)
{
// Faz busca por grupo
lst=td.get(Grupo);
// Se não houve retorno - Retorna mensagem
if (lst.size()==0)
{
msg= "Nao ha dados cadastrados para o grupo: " + Grupo;
response.sendRedirect("mensagem.jsp?status="+ msg);
}
// se houve retorno de dados - imprimi dados na tela
else
{
// Imprimi os valores da lista
int tam=0;
tam= lst.size();
%>
<center>
<table border=1 cellspacing=0 cellpading=0 width="85%">
<tr>
<td bgcolor="#EAF2FF"><font face="Verdana" size="2" color=""><b>Grupo</b> </font></td>
<td bgcolor="#EAF2FF"><font face="Verdana" size="2"><b>Descricao</b></font> </td>
<td bgcolor="#EAF2FF"><font face="Verdana" size="2"><b>Detalhes</b></font> </td>
</tr>
<%
for (int x=0; x<lst.size(); x++)
{
est=null;
est= (TipoDado.TipoDadoStruct)lst.get(x);
TipoDado.TipoDadoStruct estr= new TipoDado.TipoDadoStruct();
int Ind=est.getId();
estr=td.get(Ind);
desc=estr.getDescricao();
if (desc.length()>120)
{
desc=desc.substring(0,120);
desc=desc +"...";
}
%>
<tr>
<td ><%=est.getGrupo()%> ;</td>
<td ><%=desc%></td>
<td > <a href="tipodado_get.jsp?id=<%=est.getId()%>"><img src="images/detalhes.gif" border="0" ></a></td>
}
}
%>
</table>
<br><br>
<a href="javascript:history.back()"><img src="images/voltar.gif" width="39" height="19" border="0" alt="Voltar"/></a>
</center>
<%
}
/***** Busca por ID *********/
else
{
if (Id!=null)
{
// transforma de String para inteiro
Indice=Integer.parseInt(Id);
// Faz busca por ID
est=td.get(Indice);
// passa os dados da estrutura para variaveis
int id=est.getId();
String descr= est.getDescricao();
String dest= est.getDestino();
// Redireciona os dados para o formulário
response.sendRedirect("cadastro_dados.jsp?descricao="+ descr +"&destino="+ dest "&id="+ id);
}
}
%>
</body>
</html>