Ir al contenido principal

Problemas con acentos y ñ en JSP con MySQL

Resulta que trabajando con una página con JSP donde se debería poder capturar en un campo textArea de un Form un texto de máximo 200 caracteres pude toparme que no basta con tener configurado el tipo de codificación en la tabla de MySQL (yo lo tenía en latin1_spanish_ci) como se ve en la Figura 1.

Figura 1. Cotejamiento "latin1_spanish_ci"

Ya tampoco bastaba con tener la etiqueta META de especificación del conjunto de caracteres utilizados en la página con UTF-8 como se puede ver en la Figura 2.

Figura 2. Especificación del conjunto de caracteres para la página Web.

Aún me faltaba algo porque los textos me aparecían con símbolos raros como los mostrados en la Figura 3.

Figura 3. Texto con caracteres raros, no aparecía con acentos ni muestra Ñ.

Es por eso que buscando un poco en Internet, encontré la solución al problema en la página de A Wev0. Donde indica que se podría recodificar los datos obtenidos de MySQL al formato UTF-8 con la siguiente instrucción:

String msg=new String(request.getParameter("mensaje").getBytes("ISO-8859-1"),"UTF-8");

Así que con manos a la obra procedí a utilizarlo para convertir los datos y taran! como arte de magia el problema estaba solucionado!





Comentarios

  1. aquí encontré otra alternativa para que con una sola linea se arreglen todos los request

    https://www.youtube.com/watch?v=7ChMe8Au2-g&t=30s

    ResponderEliminar
    Respuestas
    1. Gracias por enviar otra alternativa José Angel, en el video lo que indican es que antes de hacer la recepción de los parámetros se escriba la instrucción:

      request.setCharacterEncoding("UTF-8");

      Haré las pruebas almacenando la información en una tabla y volviendo a imprimir la información en una página y probaré con Firefox y Chrome y lo comentamos.. Saludos!

      Eliminar

Publicar un comentario

Entradas populares de este blog

Alternativa a conio.h en Linux Ubuntu usando curses.h

Para los que alguna vez aprendimos a programar con el famosos y antiguo Turbo C que si no mal recuerdo en ese entonces era de la extinta Borland, en esos ayeres pudimos ver que existían funciones como getch(), gotoxy(), color(); que eran parte de una biblioteca propia de Turbo C llamada conio.h y como no es parte del estándar ANSI C no la tenemos en Linux Ubuntu.
Bueno pues ésta entrada es para comentar que existe una biblioteca para Linux que aunque también no es parte del estándar ANSI C la podemos utilizar como alternativa a las funciones que teníamos en conio.h y aquí te digo qué tienes que hacer.
Primero que nada quiero comentar que actualmente estoy utilizando la versión 12.04 de Ubuntu por lo que lo que verás está con esa distribución de Linux.
Debes instalar los paquetes libncurses5-dev y libncursesw5-dev con:
sudo apt-get install libncurses5-dev libncursesw5-dev

Abres tu entorno de desarrollo y prueba escribiendo el siguiente código:

#include <curses.h>

int main() {
  init…

Programando el Demo1 con Glade, GTK y C++

Nuestro primer programa Demo1 será una ventana que contendrá 2 botones y una etiqueta, cuando el usuario presione el botón 1 aparecerá en la etiqueta el texto “Botón1 – Clicked” y cuando el usuario presione el botón 2 aparecerá en la etiqueta el texto “Botón2 – Clicked”, en la Imagen 1 podemos ver el resultado que obtendremos.
Imagen 1
Iniciaremos nuestro Demo1 creando la interfaz de usuario con la ayuda de Glade, al iniciar Glade nos mostrara una ventana de preferencias como la que vemos en la Imagen 2.

Imagen 2
Si queremos que nuestro programa sea mas compatible con la mayoría de los sistemas operativos anteriores podemos seleccionar la versión 2.14 de GTK+ aunque desde Ubuntu 10.04 seguramente ya se cuenta con la versión 2.16, otra cosa que debemos notar es que debe estar seleccionada la opción GtkBuilder que será la forma en que crearemos las referencias a los objetos desde nuestro código.


Una vez que se cierre esa ventana podremos iniciar nuestro programa y agregaremos nuestro primer…