转载自: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. JSP学习笔记(三):Session和Cookie

    一.JSP Session HTTP是无状态协议,这意味着每次客户端检索网页时,都要单独打开一个服务器连接,因此服务器不会记录下先前客户端请求的任何信息.有三种方法来维持客户端与服务器的会话: 1.C ...

  2. python 安装whl文件

    对于安装whl格式的文件,首先要安装wheel包 利用 pip install wheel或下载再安装: 下载地址: https://pypi.python.org/pypi/wheel 解压后安装: ...

  3. WordPress 禁用文章修订和自动保存的方法

    以下代码亲测并没有效果,不能禁用自动保存  /* 移除自动保存和修订版本 */ remove_action('pre_post_update', 'wp_save_post_revision' ); ...

  4. Android开发者指南(9) —— ProGuard

    转: 前言 本章内容为开发者指南(Dev Guide)/Developing/Tools/ProGuard,本章内容为"混淆器",版本为Android3.0 r1,翻译来自:&qu ...

  5. 飘逸的python - 不使用keyword,求和1+2+…+n

    依据题意,我们不能用到if/else/for/while等keyword. --------------思考中------------ 思路: 1.用递归实现循环 2.递归的终止条件不用if怎么推断呢 ...

  6. 解决Ubuntu Ping网关Destination Host Unreachable错误

    ifconfig 检查了配置,没问题,是ok的, 检查了防火墙,是关闭的,邪乎了,是什么问题呢 各种尝试,最后,将 ip 搞成自动获取就 可以ping通了,但为啥手动设置就不行呢? 最后看了这个朋友的 ...

  7. ASP.NET HTTP404错误怎么办

    如图所示,HTTP404错误. 这是由于没有安装ASP.NET导致的.我们在控制面板->打开或关闭windows功能->Internet信息服务->万维网服务->应用程序开发功 ...

  8. .NET反编译之manager,base.AutoScaleMode修复

    使用反编译软件导出项目时,出现警告:设计器无法处理第X 行的代码:this.AutoScaleMode = AutoScaleMode.Font;方法"InitializeComponent ...

  9. IOS效率提升工具

    在应用开发过程中,有太多繁杂的事务需要开发者认真去解决.如何才能对开发流程进行改善或自动化,从而提高效率?这成为许多开发者共同探讨的命题.有的开发者会别出心裁地想出熟记他们最喜欢使用的文本编辑器的快捷 ...

  10. linux中Oops信息的调试及栈回溯

    Oops 信息来源及格式 Oops 这个单词含义为“惊讶” ,当内核出错时(比如访问非法地址)打印出来的信息被 称为 Oops 信息. Oops 信息包含以下几部分内容. 1 一段文本描述信息. 比如 ...