Zabeu
Abril 7, 2011, 7:32am
#1
Pessoal, fiz um projeto novo e criei uma pag web xhtml chamado “index”.
Dentro dela coloquei um teste :
<?xml version='1.0' encoding='UTF-8' ?>
<!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">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
Hello from Facelets
</h:body>
</html>
No Redirect.jsp coloquei
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<% response.sendRedirect("index.xhtml"); %>
Quando executo o projeto ele abre o IE com o modo “salvar o arquivo index.xhtml”…
Ele não deveria abrir uma pagina hello world ?
Obrigado!
o negócio eh o seguinte: quando vc cria um projeto JSF, lá no web.xml fica configurado alguns padrões de extensões para as páginas. os padrões que são criados na hora que vc cria o projeto são: /faces/*, *.jsf, *.faces, ou seja, para chamar qualquer página .xhtml, tem que chamar com uma das extensões acima. abra o teu web.xml e veja as tags . é nessa tag que ficam os padrões de extensões para as páginas.
bom, assumindo que no teu web.xml deve ter os padrões que eu falei acima, vc chamaria a página assim:
<% response.sendRedirect("faces/index.xhtml"); %>
ou
<% response.sendRedirect("index.jsf"); %>
ou
<% response.sendRedirect("index.faces"); %>
sem contar que vc pode la no web.xml definir qualquer outro padrão que vc queira, basta acrescentar uma nova , assim:
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.minhaExtensao</url-pattern>
</servlet-mapping>
Vai depender de como está mapeado seu servlet do jsf. Veja a configração no web.xml.
Caso esteja com o /faces/* (que é o um dos padrões):
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
você tem que colocar:
<% response.sendRedirect("/faces/index.xhtml"); %>
Zabeu
Abril 7, 2011, 8:45am
#5
esta como voce falou “/faces/*” , veja abaixo:
<?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">
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<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>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>faces/redirect.jsp</welcome-file>
</welcome-file-list>
</web-app>
redirect.jsp
<%--
Views should be stored under the WEB-INF folder so that
they are not accessible except through controller process.
This JSP is here to provide a redirect to the dispatcher
servlet but should be the only JSP outside of WEB-INF.
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<% response.sendRedirect("/faces/teste.xhtml"); %>
teste.xhtml
[code]<?xml version='1.0' encoding='UTF-8' ?>
Facelet Title
Hello from Facelets
[/code]
Msm assim esta abrindo no modo “salvar” arquivo…
;/
Como está o diretóroio dessa página? Lembrando desse jeito ela tem que ficar no diretório raiz.
Zabeu
Abril 8, 2011, 7:33am
#7
esta dentro do diretorio ( pasta ) “Web” do projeto…
conversei com um colega e ele disse que pode ser o tomcat… pois ele salva por padrão todas as extensões que nao reconhece…
tem que configurar ele parece…
vou tentar… mas se alguem puder me ajudar a resolver eu agradeço ;/
Obrigado
Zabeu
Abril 8, 2011, 7:47am
#8
estranho…eu salvei o arquivo só para ver… ( na area de trabalho )
Fui executar ele com o IE e ele pediu pra salvar novamente…
to achando que é o IE…
vou instalar mozila
Zabeu
Abril 8, 2011, 7:49am
#9
shazam !
Era o IE … instalei o mozila e deixei ele como padrão…
Ele esta abrindo normalmente o arquivo…
O IE 8 não reconhece xhtml?
Obrigado
Zabeu
Abril 8, 2011, 8:15am
#10
É realmente dificil de entender esse Java…
Eu estou tentando aprender baseado em tutoriais e sempre tem alguma coisa que empaca…
Agora ele reconhece o html pelo mozzila mas não mostra nada do que eu programei…
fiz isto no arquivo principal xhtml :
[code]<?xml version='1.0' encoding='UTF-8' ?>
Trabalhando com Prime Faces
[/code]
E não mostra nada na tela…esta em branco… estou errando algo ?
valeu
Tem algum erro no console do servidor?
Outra coisa, nesse caso do xhtml, você não pode simplesmente salvar ele e tentar abrir com o navegador. Pois ele necessita de um servidor para que seja interpretado e até mesmo reconhecido o jsf.
Zabeu
Abril 11, 2011, 7:32am
#13
ayslanms, nao tem erro nenhum
Quando tentei novamente hoje deu não apareceu mais o “salvar”, porem a pagina diz “Navegação Cancelada”
“A navegação para a página da Web foi cancelada”
Não sei o por que…
=/
O coisinha complicada…