Id
передается в качестве параметра Url.Я стараюсь убедиться, что id
это число.Если не перенаправить на главную страницу
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));
...
}
, поэтому, если я передаю идентификатор, подобный этому
www....?facilityId=3?sdfasfda
, я ловлю, что 3?sdfasfda
не является числом, и получаю к перенаправлениюоператор, но он не перенаправляет в нужном направлении, он выполняет следующие две строки, которые пытаются преобразовать 3?sdfasfda
в Long, следовательно, дают NumberFormatException
.Так есть ли способ принудительного перенаправления прямо сейчас, или есть какой-то другой способ решить эту проблему.Жаль, что есть else
после catch
: D: D.Вышеуказанные коды находятся внутри моего @PostConstruct init()
метода