还是一个JSF页面间传递参数的问题

大家好,本人初学JSF。最近在做一个项目的时候(很小的新闻发布系统,只是为了学习),遇到了点问题。希望大家不吝赐教。

有一个A页面(导航用的,datatable做的),B页面包含A,并且有自己的内容(该内容依赖于点击A页面条目所产生的参数)。

我不知道jsf应该怎么样做,我的想法是这样的。用h:outputLink+(2个)f:param做。而f:param的value是值绑定的。
代码如下

<h:outputLink value="#{facesContext.externalContext.requestContextPath}/web/newslist.faces">
<h:outputText value="#{smallclassList.smallclassname}"/>
<f:param name="bigclassid" value="#{smallclassList.bigclassid}"></f:param>
<f:param name="smallclassid" value="#{smallclassList.smallclassid}"></f:param>
</h:outputLink>


这样我想就可以根据不同的内容设置不同的id了
然后在managedbean中用#{param.smallclassid}获取参数
结果发现f:param不能传递正确的值(他总是传递第一次请求该页面的值)。
我自己觉得可能是这样的原因:f:param中的value设定早于smallclassList的更新(可能是这样)

网上搜了一下
觉得可能的结果是这样:

[quote]
利用ManageredBean的ManagerdProperty的值注入。包括注入Request参数 如#{parap.name}.在get或Set某一属性时,依据传递的参数来初始化数据。
(在set某个属性时初始化,容易产生有些属性还没有被注入初始化,而在get某个属性时初始化数据,又有可能该属性未被调用,则无法完成初始化工作了。)
[/quote]

另外我也看了tbuy论坛的实现,发现它好像是通过解析URL实现的,不过我感觉有2个参数的话会比较麻烦(它的好像只有1个参数)

不知道我是不是表示清楚了,呵呵。我想请问大家如何解决这样的问题。
也可以说:如何在页面间传递参数?

最重要的一点是:[color=red]我想用户再次访问时可以通过直接使用URL的方式访问[/color]
另外本人使用的是JSF RI 1.2 + tomahawk

感谢大家关注我的问题,希望尽快得到大家的回复
谢谢了!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值