Ich hatte in einer Struts 2 Applikation das Problem das Sonderzeichen, wie öäüÖÄÜß, in einem Texteingabefeld durch Fragezeichen ersetzt wurden. Nachdem das Formular abgeschickt wurde, kamen die Texte aus den Eingabefeldern zwar alle in der Action-Klasse an, jedoch waren alle Sonderzeichen durch Fragezeichen ersetzt.
Das Problem ist relative einfache zu beheben. Die JSP-Dateien sollten alle mit folgender Zeile beginnen:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Desweiteren sollte in den Formularen das Attribut “acceptcharset” auf den Wert “utf-8” gesetzt werden.
<s:form action="submitForm" method="post" acceptcharset="utf-8"> . . . </s:form>
Das hat bei mir das Problem behoben.