JSF - não executa <navigation-rule>

Pessoal, estou aprendendo JSF e tudo ia bem até eu chegar na parte de regras de navegação. Parece que não está sendo executado as tags <navigation-rule> do arquivo faces-config.xml, porém funciona normalmente o que está nas tags <managed-bean>.
Acontece o seguinte:
Tenho a pág. curso.jsp com 2 links onde cada um deve redirecionar para a pág. respectiva de acordo com a configuração das tags <navigation-rule>
[color=red]<h:commandLink value=“Listar” action=“listar”/>[/color] (deve ir para listarcursos.jsp)
[color=red]<h:commandLink value=“Incluir” action=“incluir”/>[/color] (deve ir para incluircurso.jsp)
digito o endereço [color=red]http://localhost:8080/.../curso.jsf[/color] e entra na pág. normalmente, mas ao clicar no link é carregada a própria página e não a definida no faces-config.xml.

Tenho uma outra página, incluircurso.jsp que é carregada normalmente e pela regra, se em uma inclusão ocorrer falha, deveria redirecionar para a pág. erro.jsp e se incluir com sucesso deveria ir para listarcursos.jsp. Mas isso não ocorre, parece que não entra nas tags <navigation-rule>, porém as tags <managed-bean> são executadas normalmente.
Agradeço desde já e espero que possam me ajudar a descobrir o que acontece, já olhei aqui no fórum, na documentação oficial, mas aparentemente está tudo certo.
Abaixo colocarei os códigos completos para que possam dar uma olhada.

Estou usando jsf-1_1_01

Obrigado.

faces-config.xml

[code]<?xml version=“1.0” encoding=“UTF-8”?>
<!DOCTYPE faces-config PUBLIC
“-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN”
http://java.sun.com/dtd/web-facesconfig_1_1.dtd”>

&lt;faces-config&gt;

	&lt;managed-bean&gt;
		&lt;description&gt;
		&lt;/description&gt;
		&lt;managed-bean-name&gt;alunos&lt;/managed-bean-name&gt;
		&lt;managed-bean-class&gt;br.com.aplicacaoweb.classes.Alunos&lt;/managed-bean-class&gt;
		&lt;managed-bean-scope&gt;session&lt;/managed-bean-scope&gt;
	&lt;/managed-bean&gt;
	
	&lt;managed-bean&gt;
		&lt;description&gt;
		&lt;/description&gt;
		&lt;managed-bean-name&gt;AdminCursosDAO&lt;/managed-bean-name&gt;
		&lt;managed-bean-class&gt;br.com.aplicacaoweb.dao.AdminCursosDAO&lt;/managed-bean-class&gt;
		&lt;managed-bean-scope&gt;session&lt;/managed-bean-scope&gt;
	&lt;/managed-bean&gt;
			
	&lt;managed-bean&gt;
		&lt;description&gt;
		&lt;/description&gt;
		&lt;managed-bean-name&gt;curso&lt;/managed-bean-name&gt;
		&lt;managed-bean-class&gt;br.com.aplicacaoweb.classes.Curso&lt;/managed-bean-class&gt;
		&lt;managed-bean-scope&gt;session&lt;/managed-bean-scope&gt;
	&lt;/managed-bean&gt;

	&lt;navigation-rule&gt;
		&lt;from-view-id&gt;/curso.jsp&lt;/from-view-id&gt;
		&lt;navigation-case&gt;
			[color=red]&lt;from-outcome&gt;incluir&lt;/from-outcome&gt;[/color]
			&lt;to-view-id&gt;/incluircurso.jsp&lt;/to-view-id&gt;
		&lt;/navigation-case&gt;
		&lt;navigation-case&gt;
			[color=red]&lt;from-outcome&gt;listar&lt;/from-outcome&gt;[/color]
			&lt;to-view-id&gt;/listarcursos.jsp&lt;/to-view-id&gt;
		&lt;/navigation-case&gt;
	&lt;/navigation-rule&gt;
	
	&lt;navigation-rule&gt;
		&lt;from-view-id&gt;/incluircurso.jsp&lt;/from-view-id&gt;
		&lt;navigation-case&gt;
			[color=red]&lt;from-outcome&gt;sucesso&lt;/from-outcome&gt;[/color]
			&lt;to-view-id&gt;/listarcursos.jsp&lt;/to-view-id&gt;
		&lt;/navigation-case&gt;
		&lt;navigation-case&gt;
			[color=red]&lt;from-outcome&gt;falha&lt;/from-outcome&gt;[/color]
			&lt;to-view-id&gt;/erro.jsp&lt;/to-view-id&gt;
		&lt;/navigation-case&gt;
	&lt;/navigation-rule&gt;
			
&lt;/faces-config&gt;[/code]

web.xml

[code]<?xml version=“1.0” encoding=“ISO-8859-1”?>
<!DOCTYPE web-app PUBLIC
“-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN”
http://java.sun.com/dtd/web-app_2_3.dtd”>

<web-app>
<display-name>Struts Blank Application</display-name>

<!-- Configuracao para JSF -->
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>

<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>

<!-- Faces Servlet -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<!-- Standard Action Servlet Configuration -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>

<!-- Standard Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>

<!-- The Usual Welcome File List -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

</web-app>[/code]

curso.jsp Ao clicar nos links, deveria chamar as páginas configuradas no faces-config.xml, mas não acontece nada.

[code]<%@ page language=“java” contentType=“text/html; charset=ISO-8859-1”
pageEncoding=“ISO-8859-1”%>
<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>

<%@ taglib uri=“http://java.sun.com/jsf/html” prefix=“h”%>
<%@ taglib uri=“http://java.sun.com/jsf/core” prefix=“f” %>

<html>
<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=ISO-8859-1”>
<title>Insert title here</title>
</head>
<body>
<div align=“center”>
<f:view>
<h:form>
<table border=“0”>
<tr>
<td align=“center”>
Cadastro de Cursos
</td>
</tr>
<tr>
<td align=“center”>
<h:commandLink value=“Listar” action=“listar”/>
</td>
</tr>
<tr>
<td align=“center”>
<h:commandLink value=“Incluir” action=“incluir”/>
</td>
</tr>
</table>
</h:form>
</f:view>
</div>
</body>
</html>[/code]

incluircurso.jsp Ao incluir com sucesso, deveria chamar a página listarcursos.jsp

[code]<%@ page language=“java” contentType=“text/html; charset=ISO-8859-1”
pageEncoding=“ISO-8859-1”%>
<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>

<%@ taglib uri=“http://java.sun.com/jsf/html” prefix=“h”%>
<%@ taglib uri=“http://java.sun.com/jsf/core” prefix=“f” %>

<html>
<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=ISO-8859-1”>
<title>Inclusão de curso</title>
</head>
<body>
<f:view>
<h:form>
<center><h2>Incluir novo curso</h2></center>
<table align=“center”>
<tr>
<td>IdCurso:</td>
<td><h:inputText value="#{curso.idCurso}"></h:inputText>
</tr>
<tr>
<td>Curso:</td>
<td><h:inputText value="#{curso.curso}"></h:inputText>
</tr>
<tr>
<td colspan=“2” align=“center”>
<h:commandButton value=“Incluir” action="#{curso.incluir}"></h:commandButton>
</td>
</tr>
<tr>
<td colspan=“2”>
<h:outputText id=“resultado” value="#{curso.status}"></h:outputText>
</td>
</tr>
</table>
</h:form>
</f:view>
</body>
</html>[/code]

Curso.java Possui os retornos “sucesso” ou “falha” para serem usados no <navigation-rule>

[code]public class Curso {

private int idCurso = 0;
private String curso = "";
private String status = "";

public int getIdCurso() {
	return idCurso;
}
public void setIdCurso(int idCurso) {
	this.idCurso = idCurso;
}
public String getCurso() {
	return curso;
}
public void setCurso(String curso) {
	this.curso = curso;
}
public String getStatus() {
	return status;
}
public void setStatus(String status) {
	this.status = status;
}

public  String incluir() throws SQLException{
	
	Connection cn = ConnectionFactory.getConnection();
	PreparedStatement pst = null;
	try{
		pst = cn.prepareStatement("insert into cursos (idCurso, curso) values(?,?)");
		pst.setInt(1, idCurso);
		pst.setString(2, curso);
		pst.executeUpdate();
		status = curso + " Incluído com sucesso!!!";
		return "sucesso";
	}catch(SQLException e){
		status = "Falha na inclusão: " + e.getMessage();
		return "falha";
	}
}

}[/code]

Qual a exception…o que o container te diz?

t+

Oi Diana, não dá nenhum erro, simplesmente não executa o que está definido no navigation-rules.
Eu acabei criando outro projeto exatamente igual e funcionou, mas não funciona no antigo, estranho.