4 ways to pass parameter from JSF page to backing bean
As i know,there are 4 ways to pass a parameter value from JSF page to backing bean :
- Method expression (JSF 2.0)
- f:param
- f:attribute
- f:setPropertyActionListener
Let see example one by one :
1. Method expression
Since JSF 2.0, you are allow to pass parameter value in the method expression like this #{bean.method(param)}.
JSF page…
<h:commandButton action="#{user.editAction(delete)}" />
Backing bean…
@ManagedBean(name="user")
@SessionScoped
public class UserBean{ public String editAction(String id) {
//id = "delete"
} }
2. f:param
Pass parameter value via f:param tag and get it back via request parameter in backing bean.
JSF page…
<h:commandButton action="#{user.editAction}">
<f:param name="action" value="delete" />
</h:commandButton>
Backing bean…
@ManagedBean(name="user")
@SessionScoped
public class UserBean{ public String editAction() { Map<String,String> params =
FacesContext.getExternalContext().getRequestParameterMap();
String action = params.get("action");
//... } }
3. f:atribute
Pass parameter value via f:atribute tag and get it back via action listener in backing bean.
JSF page…
<h:commandButton action="#{user.editAction}" actionListener="#{user.attrListener}">
<f:attribute name="action" value="delete" />
</h:commandButton>
Backing bean…
@ManagedBean(name="user")
@SessionScoped
public class UserBean{ String action; //action listener event
public void attrListener(ActionEvent event){ action = (String)event.getComponent().getAttributes().get("action"); } public String editAction() {
//...
} }
4. f:setPropertyActionListener
Pass parameter value via f:setPropertyActionListener tag, it will set the value directly into your backing bean property.
JSF page…
<h:commandButton action="#{user.editAction}" >
<f:setPropertyActionListener target="#{user.action}" value="delete" />
</h:commandButton>
Backing bean…
@ManagedBean(name="user")
@SessionScoped
public class UserBean{ public String action; public void setAction(String action) {
this.action = action;
} public String editAction() {
//now action property contains "delete"
} }
4 ways to pass parameter from JSF page to backing bean的更多相关文章
- PHP Fatal error: Cannot pass parameter 2 by reference
PHP Fatal error: Cannot pass parameter 2 by reference in 这个错误的意思是:不能按引用传递第2个参数 我的理解是: 方法的第2个参数 需要传递 ...
- jquery pass parameter to ajax callback
$('.del').on('click', function () { var id = $(this).attr('id'); var url = '/m/g2_content_del/' + id ...
- pass parameter by endpoint, this is for websocket
使用了Java的字符串:@ServerEndpoint("/chat/{room}")public class MyEndpoint {@OnMessagepublic void ...
- Parameter Passing / Request Parameters in JSF 2.0 (转)
This Blog is a compilation of various methods of passing Request Parameters in JSF (2.0 +) (1) f:vi ...
- [转载][翻译] 利用JSF、SpringFramework和Hibernate构建Web应用的实例讲述
[原作者] Derek Yang Shen[原文链接] http://www.javaworld.com/javaworld/jw-07-2004/jw-0719-jsf.html[源码链接] htt ...
- JSF和Struts的区别概述
JSF和Struts的区别概述,都采用taglib来处理表示层:在jsp页面中,二者都是采用一套标记库来处理页面的表示和model层的交互. 据说JSF的主要负责人就是struts的主要作者,所以二者 ...
- JSF 2 dropdown box example
In JSF, <h:selectOneMenu /> tag is used to render a dropdown box – HTML select element with &q ...
- JSF 2 multiple select listbox example
In JSF, <h:selectManyListbox /> tag is used to render a multiple select listbox – HTML select ...
- JSF 2 listbox example
In JSF, <h:selectOneListbox /> tag is used to render a single select listbox – HTML select ele ...
随机推荐
- CentOS 6.5安装和配置ngix
一.安装配置ngix 这里用wget直接拉取并安装资源文件 首先安装必要的库(nginx 中gzip模块需要 zlib 库,rewrite模块需要 pcre 库,ssl 功能需要openssl库). ...
- java读取PHP接口数据的实现方法(四)
PHP文件: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 3 ...
- PHP7.2.12-Configuration-Option
# PHP7.2.12 <pre style="background-color: rgb(255,250,233);"> `configure' configures ...
- 简单使用dom4j
package com.dom4j; import java.io.FileWriter; import java.io.IOException; import java.io.Unsupported ...
- JMeter VS LoadRunner
对比项 JMeter LoadRunner 安装 简单,下载解压即可 复杂,安装包大于1GB,安装时间较久 录制/回放模式 支持 支持 测试协议 偏少,但用户可自行拓展 较多,用户不可自行拓展 分布式 ...
- git 常用命令--抓取分支-为自己记录(二)
二:抓取分支: 多人协作时,大家都会往master分支上推送各自的修改.现在我们可以模拟另外一个同事,可以在另一台电脑上(注意要把SSH key添加到github上)或者同一台电脑上另外一个目录克隆, ...
- 中国的 Python 量化交易工具链有哪些
摘抄自知乎:https://www.zhihu.com/question/28557233 如题,提问的范围限于适合中国大陆金融市场使用的工具链,所以IbPy和Quotopian之类主要面向欧美市场的 ...
- VC++ 6.0 C8051F340 MFC programming note
/************************************************************************************** * VC++ 6.0 C ...
- 转-JAVA webservice之CXF 范例--http://cxshun.iteye.com/blog/1275408
JAVA webservice之CXF 博客分类: j2ee相关 昨天我们一起学习了一下xfire,今天我们来看一下CXF,为什么学完那个接着学这个呢.因为CXF是在xfire的基础上实现 的,所以我 ...
- web程序1