Nature org.jboss.tools.jsf.jsfnature may be removed automatically, with an error message to the log, if the model fails to load necessary data from project settings and there is no way to correct it. That usually means that something is wrong with settings of the project. If there is no message in the log like "Project * has corrupted nature: org.jboss.tools.jsf.jsfnature", but the nature was removed; that must have been done by a third party.