Programación General > JSP/Servlets
Problema de codificación
(1/1)
vrash:
Hola, tengo un problema con la codificación de un String cuando lo recojo de una base de datos MySQL (ñ y acentos) usando el servidor Tomcat 6.
Suponiendo que en MySQL tengo una tabla llamada op que muestra lo siguiente al hacer un SELECT:
--- Código: SQL --- mysql> SELECT * FROM op;+------+| op |+------+| ñ |+------+1 ROW IN SET (0.00 sec)
En mi servlet tengo algo parecido a esto:
--- Código: Java --- request.setAttribute("cad1", resultSet.getString("op"));request.setAttribute("cad2", "ñ");
Mando los datos usando forward a una pagina jsp donde tengo:
--- Código: Text --- ${cad1} ${cad2} ${"ñ"} ñ
Sorpresivamente (al menos para mi) la salida en la pagina web es esta:
--- Citar ---¤ ñ ñ ñ
--- Fin de la cita ---
Que es lo que estoy haciendo mal??
Resalto poner los 4 datos, porque se pueden dar cuenta que el error ocurre solo cuando obtengo la String desde la bd.
He buscando durante horas en San Google e intentado muchas cosas que he encontrado y sigue el problema.
En este momento, tengo la tabla en MySQL con codificación UTF-8 al igual que la página jsp.
Ya he probado a cambiarles la codificación a ambas y nada.
Espero puedan ayudarme y de antemano muchas gracias por tomarse la molestia de leer mi problema.
arielb:
en el jsp le coloco esto
--- Código: Text ---<%@ page contentType="text/html;charset=windows-1252"%><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/> <meta http-equiv="Pragma" content="no-cache,no-store,max-age=0"/>
y también puedes hacer esto
--- Código: Java ---byte[] stringValue = rs.getBytes("nombreColumna");String str = new String(stringValue,"iso-8859-1");
hasta el momento no he usado la segunda opción.
vrash:
Muchas gracias por tu respuesta juez, sin embargo, me temo que ninguna de las 2 soluciones resolvió mi problema.
Intente con la primera únicamente, y nada, después con la segunda únicamente y nada.
Al final use las dos a la vez y nada.
Seguiré buscando una solución.
arielb:
intenta cambiando el charset
Navegación
Ir a la versión completa