Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Ajax-Servlet y acentos

Estas en el tema de Ajax-Servlet y acentos en el foro de Frameworks JS en Foros del Web. HOla a todos. Soy Nuevo en este Foro. Ayúdenme pleaseeee. Vengo batallando con esto. Tengo un jsp con la siguiente directiva: <!DOCTYPE HTML PUBLIC "-//W3C//DTD ...
  #1 (permalink)  
Antiguo 13/01/2010, 13:02
 
Fecha de Ingreso: enero-2010
Mensajes: 1
Antigüedad: 14 años, 3 meses
Puntos: 0
Ajax-Servlet y acentos

HOla a todos. Soy Nuevo en este Foro. Ayúdenme pleaseeee.

Vengo batallando con esto.
Tengo un jsp con la siguiente directiva:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>


este jsp manda llamar una función javascript en un evento onclick de un botón:
<input type="button" value="Enviar a Panel" onclick="enviarComentarioAPanel()"/>

la función javascript que se manda llamar tiene un motor ajax para enviar datos a un servlet el cual lo procesará y lo guardaré en una tabla X. La función javascript es:

function enviarComentarioAPanel(){
var comentarios = encodeURIComponent(document.getElementById("coment arios").value);
var id_documento = document.getElementById("id_documento").value;
var id_comentario = document.getElementById("id_comentario").value;
var asunto = document.getElementById("asunto").value;
var id_usuario = document.getElementById("id_usuario").value;

var page = "ActionComentarios?command=enviarComentarioAPanel& id_usuario="+id_usuario;
page+="&id_documento="+id_documento+"&comentario=" +comentarios+"&asunto="+asunto;
page+="&id_comentario="+id_comentario;
//alert(page);

if(window.XMLHttpRequest){
req = new XMLHttpRequest();
}else if(window.ActiveXObject){
req = new ActiveXObject("Microsoft.XMLHTTP");
}

req.open("GET", page, true);
req.onreadystatechange = function()
{
if(req.readyState == 4)
{
if(req.status == 200)
{
window.location.href("Aprobacion.jsp?command=R");
}
}
}
req.send(null);

}


en la variable "comentarios" le asigno un valor usando "encodeURIComponent". Hasta ahí todo bien. Se envía al servidor, al servlet y este lo guarda bien en la tablaX. Hasta aquí todo bien.
Al cambiar el valor con encodeURIComponent al acento de la palabra "águila", dentro del javascript, por ejemplo, pone %C3%A1guila, y eso está bien. Y se supone que así lo envío en el url.

EL PROBLEMA ES: cuando el servlet recibe el parámetro con el siguiente codigo:
String comentario = (request.getParameter("comentario")!=null)?request .getParameter("comentario"):"";

y al hacerle un System.out.println(comentario); me muestra otra cosa diferente a %C3%A1guila. Lo que me muestra es: águila y así se guarda en mi base de datos. YO quisiera que me respetara el formato que le estoy dando desde el javascript. Cómo puedo hacerle para que el servlet me respete el formato de encodeURIComponent que le dí en el javascript, y que me muestre %C3%A1guila en lugar de águila.???????

Gracias por sus aportaciones.
  #2 (permalink)  
Antiguo 16/01/2010, 13:08
 
Fecha de Ingreso: octubre-2009
Mensajes: 32
Antigüedad: 14 años, 6 meses
Puntos: 2
Respuesta: Ajax-Servlet y acentos

Esto es problema de encoding's. Tu variable comentario la tienes que codificar al formato que deseas (que no se cual es).

Pregunta: Por que no usas UTF-8 para toda tu aplicacion?

Etiquetas: acentos, ajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:18.