<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
galera, quero que quando eu coloque a url http://localhost:8080/PerfilProject/
ja apareca a pagina de login “login.jsp”
soh funciona eu colocando http://localhost:8080/PerfilProject/login.jsf
o que eu devo alterar no welcome-file-list ?
aparece
[code]org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp at line 12
9: .:: Login ::.
10:
11:
12: <f:view>
13:
14:
15: <h:form id=“Perfil”>
[/code]
[code]Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
java.lang.RuntimeException: Cannot find FacesContext
javax.faces.webapp.UIComponentClassicTagBase.getFacesContext(UIComponentClassicTagBase.java:1855)
javax.faces.webapp.UIComponentClassicTagBase.setJspId(UIComponentClassicTagBase.java:1672)
org.apache.jsp.login_jsp._jspx_meth_f_005fview_005f0(login_jsp.java:124)
org.apache.jsp.login_jsp._jspService(login_jsp.java:98)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
[/code]
Spool
Fevereiro 17, 2010, 9:16am
#3
[quote=sandro.csimas]<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
galera, quero que quando eu coloque a url http://localhost:8080/PerfilProject/
ja apareca a pagina de login “login.jsp”
soh funciona eu colocando http://localhost:8080/PerfilProject/login.jsf
o que eu devo alterar no welcome-file-list ?
[/quote]
Infelizmente, isso não funciona muito bem com JSF.
Quando o usuário visitar http://localhost:8080/PerfilProject/ , o container não deveria processar login.jsp. Ao fazer isso, ele pularia a fase de processamento do JSF.
É comum utilizar um arquivo index.html (por exemplo) que redirecione o usuário para o início da aplicação, apontando para a URL faces correta.
Ex.:
<html>
<head>
<meta http-equiv="Refresh" content="0; URL=login.jsf" />
</head>
<body>
<h3>Aguarde enquanto é direcionado para o início da aplicação.</h3>
</body>
</html>