【发布时间】:2012-05-19 07:39:30
【问题描述】:
是否可以通过 FacesContext 访问 selectOneMenu 中的值?
【问题讨论】:
是否可以通过 FacesContext 访问 selectOneMenu 中的值?
【问题讨论】:
HTML 输入元素的值通常作为 HTTP 请求参数提交,输入字段名称为请求参数名称。因此,如果您知道 JSF 生成的 HTML 输入字段名称,那么您将能够从请求参数映射中获取它。
例如
<h:form id="formId">
<h:selectOneMenu id="menuId">
...
和
String menuValue = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("formId:menuId");
// ...
然而,这是否有用是非常值得怀疑的。您通常通过 UIInput 组件的 value 属性直接将输入值绑定到支持 bean 属性,以便 JSF 完成收集请求参数、转换/验证它们和更新模型值的所有工作。
【讨论】: