Primefaces 6:配置faces-config.xml

时间:2018-02-19 15:15:26

标签: jsf primefaces jsf-2 faces-config

我必须在我的Web应用程序中设置显式导航(Java 8 + Primefaces 6)。 我不太了解这些技术,但我想为每个xhtml页面设置一个通用名称,以便在网址中查看。

所以我创建了一个页面test.xhtml:

<h:form id="formId">
<p:inputText...
<p:commandButton id="btn" 
value="test"
action="#{myBeanViewScoped.test()}" />
</h:form>

如果没有错误,方法测试会返回一个xhtml页面。 如果我在return语句中添加as后缀代码:

return "/calledPage.xhtml?faces-redirect=true"

正常工作。 我读了一些关于这个的文章,我试图删除后缀&#34;?faces-redirect = true&#34;并在我的faces-config.xml中添加此代码:

<?xml version="1.0" encoding="UTF-8"?>

<faces-config
    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-facesconfig_2_0.xsd"
    version="2.0">

    <application>
        <locale-config>
            <default-locale>en</default-locale>
        </locale-config>             
    </application>

    <navigation-rule>
         <display-name>test</display-name>
         <from-view-id>/test.html</from-view-id>
         <description>test</description>
         <navigation-case>
             <display-name>authenticated</display-name>
             <description>authenticated</description>
             <from-action>#{myBeanViewScoped.test}</from-action>
             <from-outcome>/calledPage.xhtml</from-outcome>
             <to-view-id>/calledPage.xhtml</to-view-id>
             <redirect />
         </navigation-case>
    </navigation-rule>

</faces-config>

应用程序不会产生错误,但我在URL中总是看到test.xhtml而不是&#34;经过身份验证&#34;。 我的错在哪里?

感谢。

0 个答案:

没有答案