Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Errore di codifica caratteri unicode in JSP

    salve ancora,

    oggi ho un nuovo problema bello caldo.

    L'applicazione sto realizzando l'avevo iniziata a costruire in PHP, ma devo portarlo in java perchè ha dei PRO che fanno al mio caso.

    In php avevo delle form che potevano accettare come testo in ingresso anche dei caratteri unicode, quindi qualcosa del tipo こんにちは私の家.

    In php inserivo il campo dei vari form in dei campi su tabelle innodb mysql con campi varchar del tipo utf8 utf8-general-ci che dovrebbe essere quello adatto ad ospitare vari tipi di caratteri, in particolare l'unicode.

    Sempre in php, quando andavo a stampare questi campi del database, mi scriveva i caratteri correttamente codificati.
    Ora in java invece non me lo stampa bene.

    Risultato pagina in php:

    レシーバレシーバ :
    Pippo Susina :
    JSP:
    レシーãƒãƒ¬ã‚·ãƒ¼ãƒ: Titolo gilda
    Pippo Susina: primo link
    Grazie in anticipo
    ...

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    502

    Re: Errore di codifica caratteri unicode in JSP

    Originariamente inviato da LordSaga640
    salve ancora,

    oggi ho un nuovo problema bello caldo.

    L'applicazione sto realizzando l'avevo iniziata a costruire in PHP, ma devo portarlo in java perchè ha dei PRO che fanno al mio caso.

    In php avevo delle form che potevano accettare come testo in ingresso anche dei caratteri unicode, quindi qualcosa del tipo こんにちは私の家.

    In php inserivo il campo dei vari form in dei campi su tabelle innodb mysql con campi varchar del tipo utf8 utf8-general-ci che dovrebbe essere quello adatto ad ospitare vari tipi di caratteri, in particolare l'unicode.

    Sempre in php, quando andavo a stampare questi campi del database, mi scriveva i caratteri correttamente codificati.
    Ora in java invece non me lo stampa bene.

    Risultato pagina in php:


    JSP:


    Grazie in anticipo
    Ora, non ti so dire con certezza perché non sviluppo in jsp (ok, non sviluppo proprio ), ma quando su letture/scritture ho problemi di caratteri accentati o comunque strani, usi i PreparedStatements per eseguire le query e almeno i caratteri accentati vanno a posto da soli.
    Se puoi, fai una prova e vedi se risolve
    al volante son nervoso

  3. #3
    sìsì, io uso sempre i preparedStatement con i setter tipati.

    In realtà, non so il motivo, ma i campi che avevo inserito con PHP, si vedono bene in lettura solo in php. Ho provato a fare una tabella temporanea in java e fare inserimento e lettura di campi e funziona tutto bene. Non capisco il motivo per cui php e java non vanno d'accordo.

    Vabbè, non è un problema, mi basta solo che su java funzioni.


    Per chi si ritrovasse lo stesso problema queste sono le modifiche che ho fatto:

    - Aggiunta di questi parametri al query di JDBC:
    &autoReconnect=true&useUnicode=true&characterEncod ing=utf-8

    - <%@page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%> nelle pagine JSP

    request.setCharacterEncoding("utf-8"); per prendere i parametri passati da form con questa codica

    Nelle servlet:
    response.setCharacterEncoding("utf-8");

    Di buona norma si aggiunge nell'html:
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">


    saluti, daniele
    ...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.