El motivo de este post es como lo indica el título. En el actual proyecto que estoy haciendo me encontré con el bug de que al hacer un paso de parámetros harcodeado desde mi jsp como el que se muestra a continuación
Escenario:
- jsp origen llamado "alumnos.jsp" ayudado de un container que es de ajax
- alumnoId: lleva la matricula de mi alumno
- comentario: lleva un segmento de texto que es ingresado desde una tex area, la cual sin problemas acepta acentos
- jsp destino llamado: "expObservacion.jsp" que recibe los parametros con sus respectivos
String comentario = (String) request.getParameter("comentario");
String alumnoId = request.getParameter("alumnoId");
ajax_loadContent('idcomentario','expObservacion.jsp?alumnoId=' + alumnoId + '&comentario=' + comentario);
El problema hasta aquí es que al pasar en la variable comentario algo como esto:
probando con los caracteres extraños á é í ó ú ñ
Lo que insertaba en la base de datos erán caracteres como estos:
probando con los caracteres extraños á é à ó ú ñ
La solución para resolver esto se lista aquí:
String comentario = new String(request.getParameter("comentario").getBytes("ISO-8859-1"), "UTF-8");
Después de leer a varias personas con el mismo error, y encontrar distintas soluciones como modificar un archivo del tomcat para que sin problemas detecte los caracteres en utf-8, o desde el form hacer un charser no se que!!!!! era un desmadre neta, y por cierto todo lo intente sin resultados hasta que como encontre en A wevo... solo había que tratar dicha variable en el jsp y woala.
atte. bein
fuente: A wevo
6 comentarios:
brillante men, me salvaste la vida y el bolsillo :P
mUCHAS gRACIAS YOU SAVE ME TOO
THANK YOU
excelente gracias tu me ayudo mucho!!
Me partía la cabeza y probé las mismas cosas que tú dices y no funciona.
Pero como tú dices wualaaaa!!!!!.
Muy bien felicitaciones
Gracias!!!
GRACIAS!!!!! :D Busque de todo y la única solución fue la tuya!!! Gracias amigo mío!! :D
¡¡¡Gracias!!! Funcionaban esos otros métodos del UTF y del ISO, pero se me atravesó IE donde no sirvió ninguno. Tu solución funciona en todos los navegadores que probé :)
Publicar un comentario