H_thor 2010-12-08 11:31 采纳率: 100%
浏览 260
已采纳

jsf页面传参问题

有这样一个需求,从一个页面跳到另一个页面
actionListener="#{A_Bean.getParam}" styleClass="button_1" immediate="true">

/h:commandButton
我需要传递一个参数#{B_Bean.param}到后台A_Bean中,给了value,如下:

public void getParam(ActionEvent e)
{
System.out.println("getParam>>>>"+(String) e.getComponent().getAttributes().get("myParam"));
String value = (String) e.getComponent().getAttributes().get("myParam");
}

但控制台打印的是getParam>>>>null,也就是#{B_Bean.param}的值没传过来,这个值确定有;并且如果把#{B_Bean.param}换成一个字符串的话就可以传过去,请各位高手解释

  • 写回答

4条回答 默认 最新

  • http4j 2010-12-08 12:31
    关注

    跟JSF的bind机制有关系吧。
    B的值bind到页面后,只有B可以观察到它。所以你的处理逻辑应该放到B中。
    或者在页面Render以前就把B的值给A,让A去bind页面值。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?