Erro jsf

7 respostas
mococa

e ai rapaziada, blz…to rodando um exemplo de jsf, e gerou o seguinte erro:

javax.servlet.ServletException: Cannot find FacesContext
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
	org.apache.jsp.index_jsp._jspService(index_jsp.java:78)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
  • ta acusando q nao ta encontrando FacesContext…eu to usando o netbeans para este exemplo…ele ja vem integrado o jsf…
    valeuu

7 Respostas

davidbuzatto

Kra, tbm tava com esse problema. O lance é que dá erro quando a gente tenta chamar diretamente (numa welcome page) uma página que contenha jsf. Tava dando uma olhada no primeiro capítulo do Core Java Server Faces e lá fala que nós devemos primeiro carregar uma pagina simples, e a partir dela redirecionar para o jsp que tem o jsf.

Por exemplo, vc pode criar um arquivo html simples, e dentro dele usar

<html>
  <head>
      <meta http-equiv="Refresh" content="0; URL=./faces/index.jsp"/>
    <title>Start Web Application</title>
  </head>
  <body>
      <p>Por favor, aguarde enquanto a aplicação é carregada.</p>
  </body>
</html>

Isso vai carregar a aplicação a redirecionar para o primeiro arquivo com jsf

Vc pode criar um jsp tbm, que use a tag e que redirecione para a primeira página com jsf.

Falow!

mococa

blz…fiz o index e redirecionei para a minha pagina principal, que tem dois links que vao chamar a pagina inserir.jsp e buscar.jsp…ta gerando erro quando tento acessar estas paginass…
** a pagina principal é a seguinte:

&lt;%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %&gt;
&lt;%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Exemplo JSF&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;f:view&gt;
&lt;h:form&gt;
&lt;center&gt;
&lt;h1&gt;Agenda&lt;/h1&gt;
<br>
&lt;h3&gt;
    &lt;h:outputLink value="inserir.jsf"&gt;
&lt;f:verbatim&gt;Inserir&lt;/f:verbatim&gt;
&lt;/h:outputLink&gt;
<br><br>
&lt;h:outputLink value="buscar.jsf"&gt;
&lt;f:verbatim&gt;Buscar&lt;/f:verbatim&gt;
&lt;/h:outputLink&gt;
&lt;/h3&gt;
&lt;/center&gt;
&lt;/h:form&gt;
&lt;/f:view&gt;
&lt;/body&gt;
&lt;/html&gt;

** o arquivo faces-config:

&lt;faces-config&gt;
 &lt;navigation-rule&gt;
&lt;from-view-id&gt;/buscar.jsp&lt;/from-view-id&gt;
&lt;navigation-case&gt;
&lt;from-outcome&gt;success&lt;/from-outcome&gt;
&lt;to-view-id&gt;/sucesso_busca.jsp&lt;/to-view-id&gt;
&lt;/navigation-case&gt;
&lt;navigation-case&gt;
&lt;from-outcome&gt;failure&lt;/from-outcome&gt;
&lt;to-view-id&gt;/falha_busca.jsp&lt;/to-view-id&gt;
&lt;/navigation-case&gt;
&lt;/navigation-rule&gt;
&lt;navigation-rule&gt;
&lt;from-view-id&gt;/inserir.jsp&lt;/from-view-id&gt;
&lt;navigation-case&gt;
&lt;from-outcome&gt;success&lt;/from-outcome&gt;
&lt;to-view-id&gt;/sucesso_insercao.jsp&lt;/to-view-id&gt;
&lt;/navigation-case&gt;
&lt;navigation-case&gt;
&lt;from-outcome&gt;failure&lt;/from-outcome&gt;
&lt;to-view-id&gt;/falha_insercao.jsp&lt;/to-view-id&gt;
&lt;/navigation-case&gt;
&lt;/navigation-rule&gt;
&lt;managed-bean&gt;
&lt;managed-bean-name&gt;agenda&lt;/managed-bean-name&gt;
&lt;managed-bean-class&gt;AgendaDB&lt;/managed-bean-class&gt;
&lt;managed-bean-scope&gt;session&lt;/managed-bean-scope&gt;
&lt;/managed-bean&gt;   
  
&lt;/faces-config&gt;

*** o erro gerado:

HTTP Status 404 - /exemplo-jsf/inserir.jsf

type Status report

message /exemplo-jsf/inserir.jsf

description The requested resource (/exemplo-jsf/inserir.jsf) is not available.
Apache Tomcat/5.5.9

***** valeu

davidbuzatto

Esse erro está informando que /exemplo-jsf/inserir.jsf não está disponível. Seu arquivo é .jsf ou .jsp? Se for .jsp vc vai ter q configurar no web xml para que o container interprete .jsp omo .jsf ou então linkar com o valor correto (.jsp)

mococa

to seguindo um tutorial, s paginas estao com extensao .jsp…mas o link inserir e buscar sao .jsf…meu arquivo web.xml :

&lt?xml version="1.0" encoding="UTF-8"?&gt
&lt;web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"&gt;
    &lt;context-param&gt;
        &lt;param-name&gt;com.sun.faces.verifyObjects&lt;/param-name&gt;
        &lt;param-value&gt;true&lt;/param-value&gt;
    &lt;/context-param&gt;
    &lt;context-param&gt;
        &lt;param-name&gt;com.sun.faces.validateXml&lt;/param-name&gt;
        &lt;param-value&gt;true&lt;/param-value&gt;
    &lt;/context-param&gt;
    &lt;context-param&gt;
        &lt;param-name&gt;javax.faces.CONFIG_FILES&lt;/param-name&gt;
        &lt;param-value&gt;/WEB-INF/faces-config.xml&lt;/param-value&gt;
    &lt;/context-param&gt;
    &lt;servlet&gt;
        &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;
            30
        &lt;/session-timeout&gt;&lt;/session-config&gt;&lt;welcome-file-list&gt;&lt;welcome-file&gt;
            index.jsp
        &lt;/welcome-file&gt;&lt;/welcome-file-list&gt;&lt;/web-app&gt;

obs: estou usando netbeans para esta aplicação…

valeuu…

tubiluki

tenta acessar por:

/faces/exemplo-jsf/inserir.jsp

mococa

tentei de todas as maneiras…ta gerando o mesmo erro…continuo com duvida de como configurar …

valeuuu

tubiluki

tenta adicionar isso no web.xml

<servlet-mapping>
         <servlet-name>Faces Servlet</servlet-name>
         <url-pattern>*.jsf</url-pattern>
</servlet-mapping>
Criado 23 de dezembro de 2006
Ultima resposta 25 de dez. de 2006
Respostas 7
Participantes 3