I have some properties file in /WEB-INF. And I want to load it in a JSF managed bean. Is there any way to do that?
Use either ExternalContext#getResource() or ExternalContext#getResourceAsStream() wherein you pass the webcontent-relative path.
E.g.:
ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
Properties properties = new Properties();
// ...
properties.load(externalContext.getResourceAsStream("/WEB-INF/file.properties"));
This delegates under the covers to ServletContext#getResource()/getResourceAsStream().