转载自:http://blog.csdn.net/duankaige/article/details/6711044

1:JSF页面之间传参

方法1:

<h:outputLink value="param2.jsf">

<h:outputText value="Test4"></h:outputText>

<f:param name="name" value="chen"></f:param>

<f:param name="id" value="123456"></f:param>

</h:outputLink>

方法2:

<h:outputLink value="param2.jsf?name=chen&id=123456">

<h:outputText value="Test4"></h:outputText>

</h:outputLink>

2:JSF页面之间取得参数

方法1:

<h:outputText value="#{param.name}"></h:outputText>

方法2:

<%=request.getParameter("name")%>

3:JSF页面到后台传参

<h:form>

<h:commandLink value="Test2" action="#{paramBean.test}">

<f:param name="name" value="zhang"></f:param>

<f:param name="id" value="123456"></f:param>

</h:commandLink>

</h:form>

4:JSF后台取得页面值

方法1:

HttpServletRequest request = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();

request.getParameter("name");

方法2:

Map varMap = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();

varMap.get("id");

方法3:

通过配置文件进行Bean的属性值注入,在Bean的方法中直接使用属性

<managed-bean>

<managed-bean-name>paramBean</managed-bean-name>

<managed-bean-class>com.spg.bean.ParamBean</managed-bean-class>

<managed-bean-scope>request</managed-bean-scope>

<managed-property>

<property-name>id</property-name>

<property-class>java.lang.String</property-class>

<value>#{param.id} </value>

</managed-property>

</managed-bean>

当前位置举例及相关总结

1:JS中可以使用java代码。获得当前Bean、获得当前Bean中属性值的java代码。

try{

parent.historyIframe.addHistory('/glp_user/glp_user_view_ViewForm.faces?<%=FacesContext.getCurrentInstance().getApplication().createValueBinding("#{glpUserForm.historyUrlParameter}").getValue(FacesContext.getCurrentInstance())%>','<%=LocaleMessage.getMessage("glpUser.glp_user_view_ViewForm.heading")%>(<%=FacesContext.getCurrentInstance().getApplication().createValueBinding("#{glpUserForm.glpUser.userName}").getValue(FacesContext.getCurrentInstance()) %>)',"1")

}catch(e){}

2:通过配置文件属性注入,param可以将页面上存入request的值放入后台的属性中。

public String getHistoryUrlParameter(){

if(this.glpUserPrimaryKey == null)

return "_key=" + this.glpUser.getUserId();

return "_key=" + this.glpUserPrimaryKey;

}

<managed-bean>

<managed-bean-name>glpUserForm</managed-bean-name>

<managed-bean-class>

cn.com.brilliance.begen.webapp.action.GlpUserForm

</managed-bean-class>

<managed-bean-scope>request</managed-bean-scope>

<managed-property>

<property-name>glpUser</property-name>

<value>#{glpUser}</value>

</managed-property>

<managed-property>

<property-name>glpUserPrimaryKey</property-name>

<value>#{param._key}</value>

</managed-property>

</managed-bean>

JSF request参数传递的更多相关文章

  1. 02基于注解开发SpringMVC项目(jar包,异步,request,参数传递,多选的接收,Model传参,map传参,model传参,ajax,重定向,时间日期转换)

     1 所需jar包 项目结构如下: 2 web.xml配置文件的内容如下: <?xmlversion="1.0"encoding="UTF-8"?&g ...

  2. Spring中获取request的几种方法,及其线程安全性分析

    前言 本文将介绍在Spring MVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性. 原创不易,如果觉得文章对你有帮助,欢迎点赞.评论.文章有疏漏之处,欢迎批评指正. 欢迎 ...

  3. 【转】SpringMVC,获取request的几种方法,及线程安全性

    作者丨编程迷思 https://www.cnblogs.com/kismetv/p/8757260.html 概述 在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对 ...

  4. [No000016E]Spring 中获取 request 的几种方法,及其线程安全性分析

    前言 本文将介绍在Spring MVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性. 原创不易,如果觉得文章对你有帮助,欢迎点赞.评论.文章有疏漏之处,欢迎批评指正. 欢迎 ...

  5. Spring中获取request的几种方法,及其线程安全性分析(山东数漫江湖)

    前言 本文将介绍在Spring MVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性. 原创不易,如果觉得文章对你有帮助,欢迎点赞.评论.文章有疏漏之处,欢迎批评指正. 欢迎 ...

  6. Spring中如何获取request的方法汇总及其线程安全性分析

    前言 本文将介绍在Spring MVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性.下面话不多说了,来一起看看详细的介绍吧. 概述 在使用Spring MVC开发Web系统 ...

  7. 解决同一PC同一浏览器session共享问题

    首先session是同一PC同一浏览器共享的.比如如下代码: public void doPost(HttpServletRequest request, HttpServletResponse re ...

  8. JavaWeb 之过滤器

    1. 什么是过滤器 Servlet 是用来处理请求的, 过滤器是用来拦截请求的. 当用户请求某个 Servlet 时,会先执行部署在这个请求上的 Filter, 而 Filter 决定是否调用 Ser ...

  9. ajax-springMVC提交表单的方式

    1.request参数提交(Form提交),适用于GET/POST request参数传递都会转换成 id=123&fileName=test.name&type=culture_ar ...

随机推荐

  1. C++ 中特殊的用法

    1.反斜杠 a.转义字符 b.强制换行,当一行代码很长时,在这一行中间加上反斜杠,分成两行,反斜杠前后不能有空格.在预编译的的时候,会合成一行. 2.String^ 表明String是一个托管类型的指 ...

  2. Java程序猿面试体会,还没找到工作的“猿猿们”看过来!

    类似的话题,我大约在几个月前跟大家聊过. 这一次,我要依据这段时间的体会,再给大家整理一下.     今天,非常轻松地拿到了神州数码的offer. 尽管工资不是特别高,尽管非常多人一毕业就能进入这种公 ...

  3. Mysql创建、删除用户、查询所有用户等教程,提升您的MYSQL安全度!

    建议您不要使用mysql的root账号来为您的web页面连接数据库,这可能会导致用户通过网页获取到您的数据库账号密码,存在严重的安全隐患. 建议新建一账号,权限设置基本够用,然后使用那新建的账号来连接 ...

  4. tftp的安装、设置以及put、get传输实验

    tftp安装流程如下: (1)首先挂载Linux系统镜像文件到/media/cdrom/的(cdrom为在/media/下自己创建的目录) (2)进入/media/cdrom/Server/可以找到t ...

  5. 显示游戏FPS帧率的几种计算方式

    FPSDisplay.cs using UnityEngine; using System.Collections; public class FPSDisplay : MonoBehaviour { ...

  6. ios开发之-继承的实现运用

    // // main.m // 继承 // // #import <Foundation/Foundation.h> #import "Animal.h" #impor ...

  7. Python中的迭代器漫谈

    转自:http://www.jb51.net/article/60706.htm 熟悉Python的都知道,它没有类似其它语言中的for循环, 只能通过for in的方式进行循环遍历.最典型的应用就是 ...

  8. UVA1492 - Adding New Machine(扫描线)

    UVA1492 - Adding New Machine(扫描线) option=com_onlinejudge&Itemid=8&page=show_problem&cate ...

  9. git配置用户名邮箱

    通常会配置全局的 用户名 邮箱  例如 姓名@公司邮箱  姓名 git config --global user.name "姓名" git config --global use ...

  10. checkboxlist 横向显示,自动换行

    属性RepeatDirection 设为Horizontal RepeatColumns设置一个数字,表示每行显示几项 如果不想让每行显示的项是固定的,那么把RepeatLayout属性置为Flow