Corte da entrada da string de campo de texto Struts2

Qual é a melhor maneira de cortar esta string / onde é o melhor lugar para colocar o código de corte?

Digamos que eu tenha o seguinte campo de texto no meu jsp:

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

A classe de ação:

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

O feijão:

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

Eu posso mudar a configuração padrão no bean, mas isso parece um hack:

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

EDITAR: Eu também vi essa pergunta:struts2 apara toda a string obtida a partir de formulários onde também é sugerido por alguns que o método "correto" é usar um interceptador.

Por que um interceptador é o caminho "correto"? O que há de errado em mudar os setters do bean?

questionAnswers(2)

yourAnswerToTheQuestion