Problema com Navegação em JSF usando o PrimeFaces e Erro de Outcome
Ao desenvolver uma aplicação JSF utilizando PrimeFaces, me deparei com um erro ao tentar implementar um botão para redirecionamento de páginas usando o componente <p:button>.
<p:button id="errorButton" value="Voltar" outcome="index.xhtml"></p:button>O objetivo era que o botão “Voltar” redirecionasse o usuário para a página index.xhtml. No entanto, o redirecionamento não estava funcionando, resultando no seguinte erro:
JSF1073: javax.faces.FacesException obtido durante o processamento de RENDER_RESPONSE 6: 
UIComponent-ClientId=, Message=Could not resolve NavigationCase for outcome: index.xhtml
Causa do Erro
O erro ocorreu porque o JSF não conseguiu resolver o caminho correto para o arquivo index.xhtml. A mensagem de erro indicava que não foi possível encontrar um NavigationCase para o outcome index.xhtml.
No código original, o botão foi implementado da seguinte maneira:
<p:button id="errorButton" value="Voltar" outcome="index.xhtml"></p:button>A questão estava no fato de que o arquivo index.xhtml não estava na pasta raiz do projeto (/webapp), mas sim em um subdiretório chamado /pages/public. Como resultado, o JSF não conseguiu localizar o arquivo usando o outcome relativo index.xhtml, gerando o erro.
Estrutura do projeto:

Solução
Para resolver o problema, foi necessário especificar o caminho absoluto para o arquivo index.xhtml. Ao invés de usar apenas o nome do arquivo, foi necessário definir o caminho completo a partir da pasta /webapp.
A correção foi feita da seguinte forma:
<p:button id="errorButton" value="Voltar" outcome="/pages/public/index.xhtml"></p:button>Esse tipo de erro é comum quando se trabalha com múltiplos diretórios para organizar as páginas de uma aplicação JSF. Para evitar esse problema no futuro:
- Sempre verifique o diretório onde os arquivos 
.xhtmlestão localizados. - Use outcomes absolutos (
/caminho/para/pagina.xhtml) ao trabalhar com subdiretórios para garantir que o JSF localize a página correta.