2010-07-22 55 views
1

我们有两种形式,我们需要将值从一个传递到另一个。我们成功传递参数,但第二页在浏览器中不会呈现。浏览器挂起而请求从未完成。如果我们将重定向规则添加到faces-config.xml,页面呈现,但参数值重置为null。JSF从不呈现没有重定向规则的页面

这里是在脸上,配置我们的导航规则:

<navigation-rule> 
    <from-view-id>/activeApps.xhtml</from-view-id> 
     <from-outcome>viewApp</from-outcome> 
     <to-view-id>/viewApplications.xhtml</to-view-id> 
    </navigation-case> 
</navigation-rule> 

这就是我们如何通过从第一形态(activeApps.xhtml)参数:

<rich:menuItem ajaxSingle="true" value="View Application Form" action="#{Form1.viewApp}"> 
<a4j:actionparam name="selectedApplicationId"value="{applicationId}" assignTo="#{Form2.applicationIdString}"/> 
</rich:menuItem> 

任何帮助非常感谢。

回答

2

如果你想从目标页面改变,你需要发出一个真正的HTTP请求,而不是一个Ajax请求。

+0

我尝试将rich:contextMenu更改为submitMode =“server”而不是submitMode =“ajax”,但它只是刷新并保持在同一页面上 – droidy 2010-07-22 16:42:25

+0

确保menuItems不覆盖submitMode。从文档:'设置菜单中所有菜单项的提交模式,除了这个属性重新定义的菜单项。可能的值是“ajax”,“server”,“none”。默认值是“服务器”。' – Naganalf 2010-07-22 18:46:03