Abhishek Kumar
Abhishek Kumar

Reputation: 41

How to throw 404 from bean in jsf

I need to throw 404 and take visitor to a specific page. I am trying with following code:

            FacesContext facesContext = FacesContext.getCurrentInstance();
            ExternalContext externalContext = facesContext.getExternalContext();                
            externalContext.setResponseStatus(HttpServletResponse.SC_NOT_FOUND);
            externalContext.setResponseHeader(Common.LOCATION, "browse_by_category.xhtml?category=CATEGORY_ALL");
            facesContext.responseComplete();

404 happens but redirection to the browse_by_category.xhtml page does not happen. Any help will be greatly appreciated.

Upvotes: 3

Views: 1863

Answers (1)

Guaido79
Guaido79

Reputation: 1261

According to your comment please try this:

FacesContext facesContext = FacesContext.getCurrentInstance();
        ExternalContext externalContext = facesContext.getExternalContext();                
        externalContext.setResponseStatus(HttpServletResponse.SC_NOT_FOUND);
        //externalContext.setResponseHeader(Common.LOCATION, "browse_by_category.xhtml?category=CATEGORY_ALL");
        externalContext.dispatch("browse_by_category.xhtml");
        facesContext.responseComplete();

Upvotes: 4

Related Questions