【问题标题】:how to get http get request params in jsf 2.0 bakcing bean?如何在 jsf 2.0 bakcing bean 中获取 http 获取请求参数?
【发布时间】:2011-02-28 09:10:41
【问题描述】:

我无法将 http get 参数传递给 jsf 2.0 支持 bean。 用户将使用一些包含某个实体的 id 的参数调用 URl,这些参数稍后用于将其他一些实体持久化到 db 中。

整个过程可以概括为: 1.用户打开页面http://www.somhost.com/JsfApp/step-one.xhtml?sid=1 2.用户填写一些数据并转到下一页 3. 用户填写更多数据,然后使用第一步中的 sid 参数将实体保存到 db。

我有会话范围的支持 bean,它保存来自所有页面(步骤)的数据,但我不能将参数传递给 bean 属性..

有什么想法吗?

【问题讨论】:

    标签: jsf parameters javabeans


    【解决方案1】:

    只有当 bean 是请求范围时才有可能,因为它是一个请求参数。创建一个请求范围的 bean,并将当前会话范围的 bean 也设为它的托管属性。

    @ManagedBean
    @RequestScoped
    public class Step {
    
        @ManagedProperty(value="#{param.sid}")
        private Long sid;
    
        @ManagedProperty(value="#{data}")
        private Data data; // #{data} is a @SessionScoped @ManagedBean
    
        public String submitStep1() {
            // ...
        }
    
        public String submitStep2() {
            // ...
        }
    
        // ...
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-22
      • 1970-01-01
      • 2011-11-21
      • 2012-09-16
      • 1970-01-01
      • 1970-01-01
      • 2015-11-01
      相关资源
      最近更新 更多