FacesContext.getCurrentInstance().getExternalContext().redirection ne redirige pas immédiatement

Un Id est en passant comme paramètre d'Url. J'ai essayer de faire en sorte que le id est un nombre. Si redirige pas vers la page principale

if(facilityId != null){
    try{
        Long.parseLong(facilityId);
    }catch(NumberFormatException e){
        try {
            FacesContext.getCurrentInstance().getExternalContext().redirect("DisplayList.jsf");                    
        } catch (IOException ex) {}
    }
    facility = documentSBean.findFacilityById(Long.parseLong(facilityId));
    ...
}

donc, si je passe un id comme ceci

www....?facilityId=3?sdfasfda

J'attrape que 3?sdfasfda n'est pas un nombre, et d'obtenir la redirection déclaration, mais il ne redirige pas immédiatement, il execute les quelques lignes qui tentent de convertir 3?sdfasfda d'un Long, d'où le rendement NumberFormatException. Donc, il y a un moyen pour forcer la redirection de suite, ou est-il un autre moyen de résoudre ce problème. Souhaitons qu'il y a un else après un catch 😀 :D. Les codes ci-dessus sont à l'intérieur de mon @PostConstruct init() méthode

InformationsquelleAutor Thang Pham | 2010-11-04