1

我尝试将 JSF 2(来自 IBM Websphere 8 的标准 Myfaces 2 实现)和 Primefaces 4 集成到 Websphere Portal 8 Portlet 中。

Primefaces 已加载,但 Primefaces 资源未加载。所以我打开了我的萤火虫并查看了资源 URL。生成这样的东西:

url("/.Myapp/javax.faces.resource/editor/images/buttons.gif.faces.faces?ln=primefaces&v=4.0") repeat scroll 0 0 rgba(0, 0, 0, 0)

删除 firebug 中的第二个.faces后,资源已加载。所以资源URL生成肯定有问题。为什么 web.xml 的后缀在 url 中添加了两次?如何防止 Websphere Portal 8、Portal Bridge 或任何生成此错误 URL 的东西?

有任何想法吗?

罗宾

4

2 回答 2

1

作为 JSF v1.2 的一部分,需要带有 *.jsf url 模式的 Faces Servlet。现在在 JSF v2.0 *.html 中是必需的。

问候, 纳拉扬

于 2014-10-08T07:14:51.810 回答
0

必须如下所示配置我的 web.xml 并且它有效:

<servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
        <enabled>true</enabled>
        <async-supported>false</async-supported>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>index.xhtml</welcome-file>
    </welcome-file-list>
于 2014-09-09T12:15:15.707 回答