JSF 2.0 + ECLIPSE INDIGO + TOMCAT 7 Não da certo...Porque?

4 respostas
E

Socorroo...ja pesquisei tudo quanto é lugar...ja segui varios posts...varios tutoriais...sem respostas.
Estrou iniciando em JSF 2.0 e estou tendo muita dificuldade, comprei o livro Programação Java para Web - Novatec,
e estou seguindo passo a passo, mas não funciona de forma alguma o primeiro exemplo, que e bem basico.

Olha o que acontece: O projeto esta todo configurado, xml, os beans reconhecidos,regras navegação de paginas, paginas em xhtml com as taglibs(h e f, ,) e agora
quando executo o projeto ele chama a pagina index.xhtml normalmente, ela contem um commandLink dentro do tudo normal, so que quando é apresentada a pagina no navegador(firefox,explorer,crome, todos testados) so aparece o html normal a frase(Gerenciador Web Financeiro), cade o componente JSF (testado outros componentes) ????

O que pode ser ?
Problemas com Tomcat 7 ? Ja tentei com o Glassfish 3 e a mesma coisa.
Problema com Eclipse Indigo, não e lançada nehuma exceção, nadinha no console.
Problema com a estrutura das paginas xhtml.
Problemas com os .jar .
Problema com o xml.

Ja não sei ....

index.xhtml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core">
<h:head>
	<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
	<title>Gerenciador Financeiro Pessoal</title>
</h:head>
<h:body>
	<h1>Gerenciador Financeiro Pessoal</h1>
	<h:form>
		<h:commandLink action="#{usuarioBean.novo}">Novo Usuario</h:commandLink>
	</h:form>
</h:body>
</html>
xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	id="WebApp_ID" version="3.0">
	<display-name>FinanceiroWeb</display-name>
	<welcome-file-list>
		
		<welcome-file>index.xhtml</welcome-file>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	<servlet>
		<servlet-name>Faces Servlet</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>/faces/*</url-pattern>
	</servlet-mapping>
	<context-param>
		<param-name>javax.faces.PROJECT_STAGE</param-name>
		<param-value>Development</param-value>
	</context-param>
	<listener>
		<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
	</listener>

</web-app>

Jars utilizados.(JSF 2.0 )

jsf-api.jar
jsf-impl.jar
jstl-1.2.jar
commons-beanutils-1.8.2.jar
commons-collections-3.2.1.jar
commons-digester-2.0.jar
commons-logging-1.1.1.jar

4 Respostas

drsmachado

Em primeiro lugar, por que está utilizando uma versão antiga dos jars do jsf?
Segundo, em qual maldito tutorial está escrito que deve usar todos estes jars para jsf 2?
Terceiro, por que tanto desespero?

Pelo que está parecendo, o servidor aborta a criação da página por alguma razão, pode ser incompatibilidade, problema com o código ou qualquer coisa assim.

Faça o seguinte:
Acesse http://javaserverfaces.java.net/ do lado direito da página tem 3 links para download, opte pelo último, 2.1.7.

Crie um novo projeto do tipo Dynamic Web Project no eclipse. Na primeira tela, onde coloca o nome do projeto, vá em modify (parte configuration). nos facets do projeto, marque a opção java server faces e certifique-se que a versão é a 2.0.
Clique em next até chegar à tela onde o eclipse solicita a seleção das libraries de jsf (JSF capabilities).
Selecione “Disable library Configuration”.
Em URL mapping patterns, altere de /faces/* para *.jsf e clique em finish.

Copie o jar que baixou do site indicado e coloque na pasta lib, que está em WebContent/WEB-INF

Crie um arquivo chamado index.xhtml e copie o mesmo o codigo que voce usou no topico original. Lembre-se, este arquivo deve ficar dentro de WebContent.

Apos, pode executa-lo, certamente não ocorrerá erros.

E

Ola, drsmachado.

Como já disse, estou seguindo o tutorial do livro, esses .jar são antigos sim, mas e dai, não eram para funcionar ?
Já baixei a versão mais recente do JSF também,e o problema persiste !!!
Vários tutoriais na net me informam os .jar utilizados.Se você sabe quais utilizar, por favor post o nome deles.
Esse passo a passo que você esta me informando já o refiz inúmeras vezes, já utilizei no URL mapping patterns ,/faces/*, *.jsf, *.xhtml e nada.
Já desenvolvi aplicações com JSF 1.2 e não tive problema algum, mas vou refazer tudo de novo, como você esta me informando.

Vamus ver no que vai dar.

Se tiver outra ideia, post aki, obrigaduuu pela atenção.Abraçuuu

G

Estou seguindo esse livro também, o arquivo index tem que ser .html e não .xhtml, e salve ele dentro da pasta webContent, dai o código dele vai apontar para a pagina login

o código do index.html é só isso

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Refresh" content="0;URL=Publico/login.jsf" />
<title>Insert title here</title>
</head>
<body>
</body>
</html>

e o código que você postou, você coloca no login.xhtml

E

Ola, guilhermecoelho2 .

Tudo bem…consegui resolver… só que tive que mudar todos os .jar e configurar novamente os xml,
infelizmente não da para seguir a risca o código fonte do livro, mas tudo bem vamos finalizar o projeto.

Seu eu puder te ajudar em alguma coisa…estou por ai.

Obrigado pela atenção,abraçuuu

Criado 7 de março de 2012
Ultima resposta 8 de mar. de 2012
Respostas 4
Participantes 3