JSP e XHTML em JSF

Amigos,
Estou iniciando no JSF , e criei como exemplo uma pequena aplicacao, tenho 2 arquivos de saida para o Browser , um com extensao JSP e outro XHTML , mas quando chamo o arquivo com a extensao XHTML no browser, ele tenta salvar e nao abrir um pagina de teste ( ola mundo ).
segue as configuracoes.
Arquivo web.xml.

  <servlet-mapping>
    <servlet-name>FacesServlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
  </servlet-mapping>

arquivo no WebContent :
novo.jsp ==> http://localhost:8080/Financeiro/novo.jsf ==> aparece meu pagina teste…!!
teste.xhtml ==> http://localhost:8080/Financeiro/teste.jsf ==> tenta salvar o arquivo e nao abre a pagina … !

A pergunta pode ser simples, mas infelizmente nao consegui resolver, penser ate ser alguma configuracao do windows.
obrigado.

Da o run em cima do projeto pra testar a faz uma página index.xhtml

Coloca isso no seu web.xml

<filter-mapping>
<filter-name>FilterTimeout</filter-name>
<url-pattern>*.xhtml</url-pattern>
</filter-mapping>

&lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
    &lt;servlet-class&gt;javax.faces.webapp.FacesServlet&lt;/servlet-class&gt;
    &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
&lt;/servlet&gt;
&lt;servlet-mapping&gt;
    &lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
    &lt;url-pattern&gt;/faces/*&lt;/url-pattern&gt;
&lt;/servlet-mapping&gt;
&lt;session-config&gt;
    &lt;session-timeout&gt;15&lt;/session-timeout&gt;
&lt;/session-config&gt;
&lt;welcome-file-list&gt;
    &lt;welcome-file&gt;faces/index.xhtml&lt;/welcome-file&gt;
&lt;/welcome-file-list&gt;
&lt;context-param&gt;
    &lt;param-name&gt;javax.faces.STATE_SAVING_METHOD&lt;/param-name&gt;
    &lt;param-value&gt;client&lt;/param-value&gt;
&lt;/context-param&gt;

E isso no se facesconfig

<application>
<!-- Facelets configuration -->
<view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
<locale-config>
<default-locale>pt_BR</default-locale>
<supported-locale>pt_BR</supported-locale>
<supported-locale>en_US</supported-locale>
</locale-config>
</application>

infelizmente nao deu certo.
Se ajudar estou utilizando e baixei as seguintes bibliotecas( somente estas ).
JSF - Mojarra

– Arquivos do JSTL
jstl-api-1.2
http://download.java.net/maven/glassfish/javax/servlet/jsp/jstl/jstl-api/1.2/

jstl-impl-1.2.jar
http://download.java.net/maven/glassfish/org/glassfish/web/jstl-impl/1.2/

– Arquivos do Projeto Apache Commons
commons-beanutils-1.8.3-bin.zip
http://commons.apache.org/beanutils/download_beanutils.cgi

commons-collections-3.2.1-bin.zip
http://commons.apache.org/collections/download_collections.cgi

commons-digester-2.1-bin.zip
http://commons.apache.org/digester/download_digester.cgi

commons-logging-1.1.1-bin.zip
http://commons.apache.org/logging/download_logging.cgi

Qual versão do JSF vc ta usando ?

Flavio,
boa tarde,
Estou seguindo um livro para configurar e aprender o JSF ( Progaramcao Java para a Web - editora Novatec ), mas infelizmente so consegui executar o arquivo com a extensao .JSP , mas gostaria de usar o XHTML, segue as versoes e configuracoes que fiz, VEJA a configuracao do arquivo --> faces-config.xml , que esta padrao.
Estou usando a versao.
JSF - jMojarra-2.03-fcs

WEB.XML


&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;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_2_5.xsd" 
         id="WebApp_ID" version="2.5"&gt;
  

&lt;display-name&gt;Financeiro&lt;/display-name&gt;
    
  &lt;servlet&gt;
    &lt;display-name&gt;FacesServlet&lt;/display-name&gt;
    &lt;servlet-name&gt;FacesServlet&lt;/servlet-name&gt;
    &lt;servlet-class&gt;javax.faces.webapp.FacesServlet&lt;/servlet-class&gt;
    &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
  &lt;/servlet&gt;
  
  &lt;servlet-mapping&gt;
    &lt;servlet-name&gt;FacesServlet&lt;/servlet-name&gt;
    &lt;url-pattern&gt;*.jsf&lt;/url-pattern&gt;
  &lt;/servlet-mapping&gt;
   
  
  &lt;context-param&gt;
    &lt;param-name&gt;javax.faces.PROJECT_STAGE&lt;/param-name&gt;
    &lt;param-value&gt;Development&lt;/param-value&gt;
  &lt;/context-param&gt;
  
  &lt;welcome-file-list&gt;
    &lt;welcome-file&gt;index.html&lt;/welcome-file&gt;
    &lt;welcome-file&gt;index.htm&lt;/welcome-file&gt;
    &lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;
  &lt;/welcome-file-list&gt;    
    
&lt;/web-app&gt;

o arquivo …

faces-config.xml

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;

&lt;faces-config
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
    version="1.2"&gt;
   

&lt;/faces-config&gt;

O estranho é que consigo executar e chamar o browser um arquivo com a extensao JSP , corretamente , mas NAO com o XHTML, parece que nao reconhece o XHTML , ao inves de abrir o Hello World no browser ele tentar abrir um arquivo.

arquivo criado – chamando no browser.
novo.jsp – http://localhost:8080/Financeiro/novo.jsf
novo.xhtml – TENTA ABRIR UM OUTRO ARQUIVO.

Obrigado.
att.

Mas as coisas que eu te falei pra colocar nos aquivos vc nao colocou ?

Flavio,
bom dia,
Sim, coloquei aquelas configuracoes , mas nao funcionou, o estranho é que quando chamo ( no browser) um arquivo que criei com a extensao JSP funciona bem, mas quando chamo um arquivo com a extensao XHTML, ele tenta ABRIR uma outra janela.
Obrigado.

Depois da versão 1.1 não precisa mais colocar os Jstl, e o facelets ?

Wilhans,
Estou com o mesmo problema e no momento estou utilizando o Firefox que abre os arquivos *.XHTML sem problemas.

Wilhans,

A versão 2 do JSF já tem como padrão o arquivo XHTML para as páginas.

Porém reparei que o teu faces-config.xml aponta para a versão 1.2, sugiro que obtenha o arquivo com o cabeçalho apontando para a versão 2.0 e faça o teste.

<faces-config
xmlns=“http://java.sun.com/xml/ns/javaee
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation=“http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd
version=“1.2”>

Nos arquivos fonte do livro utilizamos o faces-config.xml para a versão 2.0.

Faça o teste e nos retorne

abraços

Décio Heinzelmann Luckow

Estou com o mesmo problema que vc, comprei o mesmo livro “Programação java par Web” segui todos os passos
mas não consegui fazer rodar com XHTML só com JSP vc conseguiu resolver o problema
se conseguiu me ajude por favor senão me avise que se eu conseguir te mando a solução.

wilhans após excluir o arquivo faces-config.xml do projeto do eclipse o meu funcionou
segundo o autor o décio era seguir esses passo ai o meu rodou estava com o mesmo
problema que o seu.

boa noite,
Esse era o problema !
E obrigado Decio pela força… e a medida q vou avancando nos estudos vou postando aqui as duvidas e erros… !!
Obrigado e parabéns, pelo livro… pq estou estudando sozinho… e nestes momentos q o livro que explique de forma clara ajuda muito !
att.

Olá pessoal, boa tarde. Desculpem por desenterrar o post, mas estou com um problema sério em relação ao mesmo livro que não consigo resolver…vou postar aqui o que relatei no forum do livro…agradeço imensamente qualquer ajuda!!..


Senhores(e senhoras também!), boa tarde. Quero relatar que estou a aproximadamente 4 dias tentando sair deste capítulo(6) mas está impossível pra mim!..Estou seguindo o livro a risca, porém desenvolvendo um sistema aqui na empresa que já está com o prazo mais do que estourado!!

Até o capítulo 5, tudo corria bem, com alguns erros que logo procurando no Google dava pra resolver, porém este aqui está me tirando o sono, mas não quero que me tire o emprego. A integração do Spring Security com o Hibernate deve ser a coisa mais mirabolante do mundo, pois mesmo seguindo o que está escrito no livro, não dá pra fazer de jeito nenhum.

Acabei de refazer todo o projeto e parei exatamente no mesmo erro: “Criação inicial do objeto SessionFactory falhou: Erro: java.lang.NoSuchMethodError: javax.persistence.UniqueConstraint.name()Ljava/lang/String;”

Minha versão dos componentes está um pouco mais atualizanda do que a do livro, mas tomei todo o cuidado de pegar tudo o que fosse compatível. Minha configuração é a seguinte: Win7 Pro 64bits, JDK 1.7.0, Hibernate 3.6.8 Final, Hibernate Commons Annotations 3.2.0 Final, Spring Security 3.0.7 Release, MySQL Connector Java 5.1.18, Apache Tomcat 7.0.2n e Eclipse Indigo 64bits

Até a útima modificação que fiz agora a pouco, o erro que estava ocorrendo era o seguinte: “não pode localizar o gerador de expressões EL RI”, mas após acrescentar os dois jars (el-api-2.2 e el-impl-2.2) esse erro reapareceu!!..e para completar, a view principal.xhtml que está dentro de /admin/, está apresentando erro de sintaxe com o Expression Language.

Não sei mais o que fazer. Estava seguindo o livro para poder implementar essas tecnologias novas, pelo fato de não conhecê-las, e também ganhar produtividade em meus projetos. Espero sincermente que seja uma coisa boba e que alguém me ajude. Muito obrigado pela atenção e tenham todos um excelente Ano Novo.

Pessoal, consegui sair do capítulo…e não fiz nada demais!

1º - Retirei todos os JAR’s da aplicação e recoloquei, atualizando o que tinha que atualizar…só no Spring Security que coloquei o 3.0.5…não sei se faz sentido mas como o facelets-taglib só vai até essa versão no site do repositório, resolvi deixar o SS da mesma versão pra ver qual é!!..e funfou aqui!

2º - A dica do Cristiano funcionou perfeitamente aqui. O “Bad Credencials” parou de acontecer quando retireia linha do algoritmo de criptografia da aplicação. Não testei ainda zerar a base, recolocar o MD5 de volta e depois cadastrar um usuário, assim que eu tiver mais tempo faço isso. Meu prazo pra entrega do sistema acaba dia 31…tô na m@#$da…

3º - Estou utilizando dois bancos ao mesmo tempo pra testar a aplicação. O MySQL é o padrão de todo desenvolvedor caseiro, mas como aqui só se usa Oracle, apanhei um pouquinho agora no final pra descobrir um erro que me aconteceu na hora de gerar a tabela de permissões pelo HIbernate. Um consultor aqui da empresa me socorreu nessa. O Oracle não aceita o “?autoReconnect=true”…estava dando erro direto pra criar a tabela. Quando ele viu isso e retirou, pq achou estranho esse código, retestei e funfou na moral…

Bom, agora vamos que vamos pq o tempo não pára, como dizia o poeta Cazuza…capítulo 7, aí vou eu…

Galera, qualquer coisa é só me mandar e-mail, blz?..estou a disposição pra tentar ajudar no que for preciso. No GUJ tbm é fácil de me localizar…eu postei algumas coisas lá sobre essas dúvidas do livro.

Abração!!! :smiley: