Home Page

24 Dicembre 2006

Struts, caratteri speciali nei form

Quando si inseriscono caratteri speciali in un form realizzato in Struts non
sempre le cose funzionano come dovrebbero.

Il RequestProcessor situato
nel package org.apache.struts.action è la classe che si occupa di processare i
dati inseriti in un form dall’utente. E’ possibile estendere tale classe per
forzare l’encoding dei caratteri inseriti nel form nel charset desiderato.

La classe che estende il RequestProcessor
è molto semplice:

package it.webgriffe.struts.action;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class RequestProcessorUtf8
extends org.apache.struts.action.RequestProcessor {

public void process(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
super.process(request, response);
}
}

La classe non fa altro che impostare il character encoding di default, in
questo caso a UTF-8.

Per utilizzarla basta inserire la direttiva seguente
nello struts-config.xml:

<controller
processorClass="it.webgriffe.struts.action.RequestProcessorUtf8"
contentType="text/html;charset=UTF-8"
locale="true" />

Pubblicato in Java

Leave a Reply

TROVA:

Informazioni su questo blog Informazioni su questo blog Abbonati ai Feed RSS di questo Blog Abbonati ai Feed RSS di questo Blog Scarica il nostro software Scarica il nostro software
Story of Stuff