2011-05-25 20 views
5

Cuando creé un nuevo proyecto en eclipse, automáticamente creó para mí una página index.jsp, no quiero que la página de inicio sea .jsp, quiero que sea .xhtml Esto es lo que hice en el web.xml:¿Cómo cambiar la página de inicio de mi proyecto web?

<web-app version="3.0" 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_3_0.xsd"> 
<servlet> 
    <servlet-name>Faces Servlet</servlet-name> 
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 
<welcome-file-list> 
    <welcome-file>myStartPage.xhtml</welcome-file> 
</welcome-file-list> 
</web-app> 

el código anterior no permite que vea la página myStartPage.xhtml como la primera página cuando corro el proyecto en localhost.

¿Cómo debo modificar esto para que el navegador muestre la página de inicio para mí? También no quiero usar ningún patrón de url. ¿Es eso obligatorio? (Intenté quitar esa etiqueta, pero no compiló).

+0

Actualmente ¿Qué muestra cuando se pulse 'http: // servidor: puerto/appContext /' ?? –

+0

Cuando intento: 'http: // localhost: 8080/projectname /' obtengo HTTP Status 500 'javax.servlet.ServletException: The FacesServlet no puede tener un url-pattern de/*.' – sfrj

Respuesta

5

probar este correlación de servlet:

<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>*.xhtml</url-pattern> 
</servlet-mapping> 

Esto funciona en Glassfish 3.

+0

Eso es correcto. Ahora veo esa página como página de inicio. Pero hay una pequeña cosa que no entiendo: ¿Por qué la URL, cuando lauch acaba de decir: 'http: // localhost: 8080/projectname /' en lugar de 'http: // localhost: 8080/espantapájaros1/myStartPage. xhtml'? – sfrj

+0

Porque reenvía la solicitud internamente y entonces la URL –

+0

Entiendo. ¡Gracias! :) – sfrj

1

Por lo que sé, siempre se mostrará el index.jsp. Usted puede agregar una redirección a la index.jsp:

<% response.sendRedirect("myStartPage.xhtml"); %> 

pero puede haber una solución mejor.

+0

Sé que puedo redireccionar, pero eso no es lo que necesito – sfrj

Cuestiones relacionadas