【发布时间】:2010-04-02 17:05:36
【问题描述】:
我在使用 JSF 时遇到了一个奇怪的问题。
我开发了一个控制器并将其绑定到请求范围。
我需要访问像http://localhost:8080/selectRule.jsf?type=A 这样的一个jsf 页面,并且在同一个IE 会话上我想发出另一个像http://localhost:8080/selectRule.jsf?type=B 这样的请求
我们可以看到,这里只有 type 发生了变化。
这就是为什么我将 ruleController 绑定到请求范围,以便每个请求都创建控制器并根据类型提取数据。
我在页面中有一个private HtmlSelectOneMenu choices 项目。我看到的是,在会话中只有一次 getChoices() 被调用。这是我看到的
- 对于每个 url,都会创建一个新的 ruleController 对象。
- 只有第一次调用 getChoices()。在随后的时间里,如果我在网络浏览器中更改 URL,getChoices() 方法不会被调用,尽管正在创建一个新的控制器。
注意:我使用的是 JSF 1.1
【问题讨论】:
标签: jsf