La domanda a cui è stato collegato ha già escluso la codifica del DB dalla causa perché il problema si verifica già durante la stampa/visualizzazione del valore inviato prima di salvare in DB. Pertanto, il problema è nella codifica delle richieste HTTP.
L'URL di connessione JDBC con il set di caratteri specificato,
jdbc:mysql://localhost:3306/mydb?useUnicode=yes&characterEncoding=UTF-8
dice solo il driver MySQL JDBC da utilizzare UTF-8 per decodificare i valori in query SQL prima di inviarlo al DB. Questo non è solo completamente al di fuori dell'ambito di JSF, ma anche questo non è la causa del tuo problema, a condizione che tu sia assolutamente sicuro di avere lo stesso problema della domanda collegata.
tuo prologo XML con il set di caratteri specificato,
<?xml version='1.0' encoding='UTF-8' ?>
dice solo il parser XML di utilizzare UTF-8 per decodificare la sorgente XML prima di costruire la struttura XML intorno ad esso. Il parser XML attualmente utilizzato è SAX come internamente utilizzato da Facelets durante la creazione della vista JSF. Questa parte non ha assolutamente nulla a che fare con la codifica richiesta/risposta HTTP ed è quindi molto improbabile la causa del tuo problema.
Nessuno di questi imposta la codifica della richiesta HTTP, mentre è necessario impostare la codifica della richiesta HTTP. La domanda a cui ti sei collegato mostra già come farlo per il server Glassfish. Nel tuo caso, stai comunque utilizzando il server JBoss AS. L'impostazione specifica Glassfish è quindi inapplicabile e JBoss non supporta nulla del genere. Avresti bisogno di portare un filtro servlet personalizzato per fare il lavoro. Per esempio.
@WebFilter("/*")
public class CharacterEncodingFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
// ...
}
E 'impossibile capire che cosa il vostro problema è. Modifica la tua domanda per essere chiari sul problema che hai dovuto affrontare. – skuntsel
Il mio problema è lo stesso di questo collegamento [http://stackoverflow.com/questions/9682476/character-encoding-jsf-input]. Sto usando Jboss 7 AS invece di Glassfish. Voglio chiedere come risolvere il problema in Jboss. –