J2EE web app + kodowanie.

0

Ok. Mam stronę jsp, na której mam formularz, po kliknięciu na przycisk struts wypełnia mi danymi formatkę, ale mam zamiast polskich liter oczywiście ślaczki.

Czy muszę ręcznie te stringi zamieniać i dekodować i przekodowywać?
Czy jest na to jakiś prostszy sposób?

0

Używasz Mavena?

Jeżeli tak to pisz wszystkie pliki w UTF8 i ustaw to: http://maven.apache.org/plugins/maven-resources-plugin/examples/encoding.html

Jeżeli używasz anta, to zapoznaj się z native2ascii

0

Kodowanie klas w UTF-8 nic nie dało.
Podejrzewam, że to wina Windowsa, który jak wpisuję do formularza dane koduje je w cp1250.

Innymi słowy z formularza przychodzą kody cp1250, a moja klasa jest w utf-8 i tak i tak zamiast ó widzi A'o''.

Nieeleganckim rozwiązaniem jest użycie tego w klasie formularza:

	public void setSurname(String surname) throws UnsupportedEncodingException {
		surname = new String(surname.getBytes("ISO-8859-1"), "UTF-8");
		address.setSurname(surname);
	}

Ale to właśnie takie mało eleganckie.

0

Jakie masz kodowanie na stronie?
Czy masz <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> ?

Pamiętaj też, aby nie hardkodować komunikatów w klasach, a używać plików resource boundle (.properties)

Do edycji plików .properties zawsze używaj eclipse'a.
Najlepiej używaj widoku Properties, nie Source.
Np. jeżeli w widoku Properties podasz wartość "gżegżółka", to w source będziesz miał "g\u017Ceg\u017C\u00F3\u0142ka".

Kodowanie plików .properties możesz ustawić w opcjach w General->Content Types->Text->Java Properties Files.
Na dole daj UTF-8 i kliknij Update.
Później jeżeli wejdziesz we właściwości pliku .properties, to w Text file encoding powinno być "Default (determined from context: UTF-8)".

Ostatnia rzecz do zrobienia to ustawienie UTF-8 w Mavenie.

0

Cześć.

Ok, czytanie z pliku mi działa.
Ale przeczytaj jeszcze raz mojego posta.
Chodzi mi o to, że jak wchodzisz na moją stronę, wpisujesz coś w formularzu, to w wyniku, to co wpisałeś zmienia się w ślaczki, bo to co mam w properties, to używam do tego Resource Bundle Editora (plugin do eclipse'a) i pliki properties są dobrze zakodowane.

Oczywiście na każdej stronie mam meta.
Każdy plik jest w UTF-8 kodowany.
A mimo to nadal na wejściu mam ślaczki.

0

Może napisanie odpowiedniego filtra pomoże
http://www.javafaq.nu/java-example-code-235.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1