Recortar la entrada de la cadena de campo de texto Struts2

¿Cuál es la mejor manera de recortar esta cadena / dónde es el mejor lugar para colocar el código de recorte?

Digamos que tengo el siguiente campo de texto en mi jsp:

<s:textfield label="First Name" name="person.firstname"/>

La clase de acción:

public class BaseAction extends ActionSupport implements ServletRequestAware, SessionAware {
    private Person person;
    // Getters, setters and action logic
}

El frijol:

public class Person implements Serializable {
    private String lastname;
    private String firstname;
    // Getters and setters
}

Puedo cambiar la configuración predeterminada en el bean, pero esto parece un hack:

public void setFirstname(String firstname) {
    this.firstname = firstname.trim();
}

EDITAR: También vi esta pregunta:struts2 recorta toda la cadena obtenida de las formas donde algunos también sugieren que el método "correcto" es utilizar un interceptor.

¿Por qué un interceptor es la forma "correcta"? ¿Qué hay de malo en cambiar los setters del bean?

Respuestas a la pregunta(2)

Su respuesta a la pregunta