浏览 3135 次
锁定老帖子 主题:还是一个JSF页面间传递参数的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-16
有一个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的更新(可能是这样) 网上搜了一下 觉得可能的结果是这样: 引用 利用ManageredBean的ManagerdProperty的值注入。包括注入Request参数 如#{parap.name}.在get或Set某一属性时,依据传递的参数来初始化数据。 (在set某个属性时初始化,容易产生有些属性还没有被注入初始化,而在get某个属性时初始化数据,又有可能该属性未被调用,则无法完成初始化工作了。) 另外我也看了tbuy论坛的实现,发现它好像是通过解析URL实现的,不过我感觉有2个参数的话会比较麻烦(它的好像只有1个参数) 不知道我是不是表示清楚了,呵呵。我想请问大家如何解决这样的问题。 也可以说:如何在页面间传递参数? 最重要的一点是:我想用户再次访问时可以通过直接使用URL的方式访问 另外本人使用的是JSF RI 1.2 + tomahawk 感谢大家关注我的问题,希望尽快得到大家的回复 谢谢了! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-03-16
回复自己 呵呵
发现自己逻辑写错了 难怪总是得到相同的值 |
|
返回顶楼 | |