Prezados,
Ao acessar minha aplicação pela seguinte URL:
http://localhost:8080/artefato/page01.xhtml
Me deparo com o seguinte erro:
The requested resource (/artefato/page01.jsp) is not available.
Ele não deveria procurar minha página “.xhtml” normalmente ao invés do “.jsp”?
Segue abaixo o Web.xml e desde já, agradeço!!!
<?xml version="1.0"?>
<web-app version="2.5" 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-app_2_5.xsd">
<display-name>artefato</display-name>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.SKIN</param-name>
<param-value>blueSky</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.CONTROL_SKINNING</param-name>
<param-value>enable</param-value>
</context-param>
<filter>
<display-name>RichFaces Filter</display-name>
<filter-name>richfaces</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
</filter>
<filter-mapping>
<filter-name>richfaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
<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>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
</web-app>
Quando você faz o start da aplicação aparece algum erro?
Seu arquivo de web.xml está com o nome web.xml ou Web.xml igual vc escreveu?
Se você tentar acessar com .jsp no final, o que acontece?
Você tentou acessar como “.jsp”?
Tente colocar no seu web.xml
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>
E alterar isso pra .JSF
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
Olá,
Coloquei o contexto de aplicação e extensão que você informou.
A página é encontrada normalmente quando eu altero a extensão de mapeamento da Servlet para qualquer coisa que não seja a extensão real da página.
O problema é que nesse caso, ele carrega a página porém não exibe os componentes do JSF.
Agora, Graças ao seu parametro de contexto, mudou o erro caso eu deixe a extensão igual ao da minha página…Ao invés de não achar, ele fica aguardando resposta do servidor por tempo infinito.
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
Depois dessas alterações do web.xml, se tu tentar acessar a index.xhtml, por exemplo, pelo endereço index.jsf, o que acontece?
diogozero:
Depois dessas alterações do web.xml, se tu tentar acessar a index.xhtml, por exemplo, pelo endereço index.jsf, o que acontece?
Com a extensão no web.xml configurada para “*.jsf” a página carrega normalmente, porém não aparece os componentes no JSF, somente o Hello World.
<!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:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<body>
<p>Hello World!!!</p>
<h:form>
<h:panelGrid columns="2">
<h:outputText value="Nome: " />
<h:inputText value="${usuario.nome}" />
<h:outputText value="Idade: " />
<h:inputText value="${usuario.idade}" />
<h:outputText value="Endereco: " />
<h:inputText value="${usuario.endereco}" />
</h:panelGrid>
<h:commandButton value="Enviar! xD" action="#{usuario.enviarDados}" />
</h:form>
</body>
</html>
<?xml version='1.0' encoding='UTF-8'?>
<web-app version="2.5" 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-app_2_5.xsd">
<display-name>KeepAlive</display-name>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>
<!-- 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>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>/pages/index.xhtml</welcome-file>
</welcome-file-list>
</web-app>