JSF 2.0 VIew Handler

时间:2014-01-06 18:25:13

标签: jsf jsf-2

我正在将应用程序迁移到JSF 1.2到JSF 2.0,我在jsf 2.0中打开一个新的弹出窗口时遇到问题,当我打开一个窗口时,jsf 2为page1.jsf创建一个新视图,为page1创建另一个视图。 xhtml.it为同一页面创建两个视图,唯一的区别在于后缀。 当它创建第二个视图时,我的所有查询参数都丢失了,这导致了一个空白的弹出窗口。

servlet映射是web.xml的:

<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>*.jsf</url-pattern>
</servlet-mapping>

1 个答案:

答案 0 :(得分:0)

更改Web.xml文件

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
            xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
            id="WebApp_ID" version="2.5">


        <servlet>
            <servlet-name>facesServlet</servlet-name>
            <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>

        <servlet-mapping>
            <servlet-name>facesServlet</servlet-name>
            <url-pattern>/faces/*</url-pattern>
        </servlet-mapping>
        <servlet-mapping>

            <servlet-name>facesServlet</servlet-name>
            <url-pattern>*.jsf</url-pattern>
        </servlet-mapping>

        <servlet-mapping>
            <servlet-name>facesServlet</servlet-name>
            <url-pattern>*.faces</url-pattern>
        </servlet-mapping>

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

详细信息JSF2.0的迁移遵循此链接....

Migrating from JSF 1.2 to JSF 2.0