<from-outcome>cadastro</from-outcome> e muito importante, aqui que configuramos um de nossos apelidos, neste caso o apelido cadastro que informamos na pagina menu.jsp, e tambem na pagina falha.jsp. Ou seja, a pagina menu.jsp, por exemplo, tem um link que direciona para o apelido cadastro, quando este link for acionado o servidor vai procurar o arquivo faces-config.xml, e perguntar para ele quem e cadastro, o faces-config por sua vez vai informar para o servidor que cadastro e...<to-view-id>/pages/inicio.jsf</to-view-id> esta linha que indica que pagina o apelido cadastro deve chamar, neste caso estamos chamando /pages/inicio.jsf, note que estou chamando uma pagina com a extensao JSF e nao com a extensao JSP, conforme explicacao no passo anterior.Entao, de acordo com esta regra de navegacao, sempre que de qualquer lugar do projeto alguem clicar em algum link cadastro a pagina inicio.jsp sera acionada.Nota adicional: Se quisermos deixar a arquitetura um pouco mais fechada, por exemplo, nao queremos que cadastro seja chamado de qualquer lugar do projeto, mas somente da pagina principal, entao na tag <from-view-id> devemos informar o nome da pagina principal.As demais informacoes dentro das tags <navigation-rule> seguem o mesmo padrao do caso cadastro, nelas estamos configurando os outros apelidos como falhou e sucesso, que estao sendo utilizados no metodo testar() do nosso bean, e o apelido inicio que esta sendo utilizado na pagina sucesso.jsp. Todos estes apelidos direcionam para alguma pagina dentro do nosso projeto.Agora ja configuramos quase todos os apelidos, falta o teste que esta sendo utilizado na pagina inicio.jsp. Neste caso e um pouco diferente, nao estamos direcionando para alguma pagina, mas sim utilizando variaveis e metodos de uma classe, uma classe bean, entao nao podemos configurar uma regra de navegacao pois esta nao e uma regra, neste caso possuimos um BEAN, entao e isto que devemos configurar.<managed-bean> e </managed-bean>, estas tags informam o inicio e o fim da configuracao de beans do projeto, todos os beans que vamos utilizar devem ser configurados dentro destas tags.<managed-bean-name>teste</managed-bean-name>, e nesta linha que definimos o apelido do nosso bean, como ele devera ser referenciado dentro de nossas paginas, neste casos estamos dizendo que o apelido do nossa classe testeBean.java sera simplesmente teste.<managed-bean-class>br.com.projetox.view.bean.testeBean</managed-bean-class>, nesta linha informamos o caminho completo e o nome da classe, para que o servidor consiga achar nosso bean quando este for solicitado por alguma pagina, neste caso a classe e testeBean (note que nao e necessario informar a extensao da classe), e esta classe esta dentro das pastas (pacote) br.com.projetox.view.<managed-bean-scope>session</managed-bean-scope> esta linha indica como o servidor vai fazer a comunicacao entre a pagina e o bean, se e por aplicacao (application), se e por sessao (session) ou se e por solicitacao (request). No nosso caso definimos que a comunicacao entre as paginas e o bean sera por sessao.Pronto! Configuramos nossos apelidos e nosso bean! Falta agora configurar nosso projeto!Somente com o que temos ate agora a aplicacao nao ira funcionar, por que o servidor ainda nao sabe que nosso projeto esta utilizando o framework JSF. Mas como informar para o servidor que nosso projeto e um projeto JSF? Atraves do arquivo web.xml!Neste caso nao existe