Pytanie, z którym się łączyłeś, już wykluczyło kodowanie DB z przyczyny, ponieważ problem już występuje podczas drukowania/ponownego wyświetlania przesłanej wartości przed zapisaniem w DB. Tak więc problem polega na kodowaniu żądań HTTP.
Twoje połączenie JDBC URL z określonym charset,
jdbc:mysql://localhost:3306/mydb?useUnicode=yes&characterEncoding=UTF-8
tylko mówi sterownik MySQL JDBC do korzystania z UTF-8 do dekodowania wartości w zapytaniach SQL przed wysłaniem go do DB. Jest to nie tylko całkowicie poza zasięgiem JSF, ale nie jest to również przyczyną Twojego problemu, pod warunkiem, że masz absolutną pewność, że masz taki sam problem jak w połączonym pytaniu.
Twój prolog XML z określonego zestawu znaków,
<?xml version='1.0' encoding='UTF-8' ?>
tylko mówi parsera XML UTF-8 do dekodowania źródło XML przed budowanie drzewa XML wokół niego. Analizator składni XML faktycznie używany jest SAX jako wewnętrznie używany przez Facelets podczas budowania czasu widoku JSF. Ta część nie ma nic wspólnego z kodowaniem żądań/odpowiedzi HTTP i dlatego jest bardzo mało prawdopodobna przyczyną problemu.
Żadne z nich nie ustawia kodowania żądań HTTP, podczas gdy trzeba ustawić kodowanie żądań HTTP. Pytanie, które łączyłeś już pokazuje, jak to zrobić dla serwera Glassfish. W twoim przypadku korzystasz jednak z serwera JBoss AS. Ustawienie specyficzne dla Glassfish nie ma zastosowania, a JBoss nie obsługuje niczego podobnego. Aby wykonać zadanie, musisz wprowadzić niestandardowy filtr serwletów. Na przykład.
@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);
}
// ...
}
Niemożliwe jest, aby zrozumieć, jaki jest twój problem. Zmień swoje pytanie, aby było jasne w kwestii, z którą się spotkałeś. – skuntsel
Mój problem jest taki sam jak ten link [http://stackoverflow.com/questions/9682476/character-encoding-jsf-input]. Używam Jboss 7 AS zamiast Glassfish. Chcę zapytać, jak rozwiązać problem w Jboss. –