Ele entra no corpo do if não iporta a string que getNovaSenha() devolver??? O que acontece??? :?
if(! Pattern.matches("a-z", getNovaSenha()) ) {
errors.add(org.apache.struts.action.ActionErrors.GLOBAL_ERROR,
new ActionError("trocaSenha.novasenha.formato"));
}
else if (! Pattern.matches("{4,15}", getNovaSenha()) ) {
errors.add(org.apache.struts.action.ActionErrors.GLOBAL_ERROR,
new ActionError("trocaSenha.novasenha.comprimento"));
}