Te has encontrado con el monstruo de la codificación.
Ten cuenta que hay que controlar el encoding en la web, en el servidor y en la BBDD.
En el caso del tomcat tienes que configurar el context para que por GET coja bien los parámetros con caracteres UTF-8.
Para POST había que hacer otros cambios que ahora no recuerdo
http://stackoverflow.com/questions/1...n-java-webapps