首页 > 其他分享 >How to pass new hidden value to backing bean in JSF(JSF 隐藏域传值到后台)

How to pass new hidden value to backing bean in JSF(JSF 隐藏域传值到后台)

时间:2023-07-21 17:05:03浏览次数:39  
标签:JSF String backing value bean new hidden public


JSF 隐藏域传值到后台

 

In some cases, you may need to pass a new hidden value to a backing bean. Generally, there are two ways :

1. HTML Tag + getRequestParameterMap()

Render hidden field with plain HTML input, hard-coded new hidden value and access in backing bean viagetRequestParameterMap() method.

JSF…

<h:form id="myForm">
    <input type="hidden" name="hidden1" value="this is hidden2" />
    <h:commandButton value="submit" action="#{user.action}" />
</h:form>

Managed bean…

@ManagedBean(name="user")
@SessionScoped
public class UserBean
{
	public String action(){
	   String value = FacesContext.getCurrentInstance().
		getExternalContext().getRequestParameterMap().get("hidden1");
	}
}



 



2. JSF Tag + JavaScript

Render hidden field via “h:inputHidden” tag, assign new value via JavaScript.

JSF…

<script type="text/javascript">
   function setHiddenValue(new_value){
			
	document.getElementById('myForm:hidden2').value = new_value;
			
   }
</script>
<h:form id="myForm">		    
   <h:inputHidden id="hidden2" value="#{user.hidden2}" />
   <h:commandButton value="submit" action="..." onclick="setHiddenValue('this is hidden2');" />
</h:form>

Managed bean…

@ManagedBean(name="user")
@SessionScoped
public class UserBean
{
	public String hidden2;
	
	public void setHidden2(String hidden2) {
		this.hidden2 = hidden2;
	}
}



 



JSF 2.0 new hidden value example

A JSF 2.0 example, to demonstrate the use of above two methods to pass a new hidden value to a backing bean.

1. Managed Bean

A simple managed bean, assign name as “user”.

package com.mkyong.form;
 
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

import java.io.Serializable;

@ManagedBean(name="user")
@SessionScoped
public class UserBean implements Serializable {

	public String hidden1;
	public String hidden2;
	
	public String getHidden2() {
		return hidden2;
	}

	public void setHidden2(String hidden2) {
		this.hidden2 = hidden2;
	}

	public String getHidden1() {
		return hidden1;
	}

	public void setHidden1(String hidden1) {
		this.hidden1 = hidden1;
	}

	public String action(){
		
	    String value = FacesContext.getCurrentInstance().
		getExternalContext().getRequestParameterMap().get("hidden1");
	    setHidden1(value);
    
	    return "start";
	}	
}

2. View Page

Two pages for demonstration.

demo.xhtml – two ways to pass a new hidden value.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   
      xmlns:h="http://java.sun.com/jsf/html">

	<h:head>
	<script type="text/javascript">
	   function setHiddenValue(new_value){
			
	     document.getElementById('myForm:hidden2').value = new_value;
			
	   }
	</script>
	</h:head>
    <h:body>
     <h1>JSF 2 pass new hidden value to backing bean</h1>
 
     <h:form id="myForm">

       <input type="hidden" name="hidden1" value="this is hidden2" />

       <h:inputHidden id="hidden2" value="#{user.hidden2}" />

       <h:commandButton value="submit" action="#{user.action}" 
                               onclick="setHiddenValue('this is hidden2');" />
     </h:form>
		
    </h:body>
</html>

start.xhtml – display hidden value via “h:outputText” tag.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   
      xmlns:h="http://java.sun.com/jsf/html">

    <h:body>
    	<h1>JSF 2 pass new hidden value to backing bean</h1>
 	<ol>
 	  <li>Hidden1 = <h:outputText value="#{user.hidden1}" /></li>
 	  <li>Hidden2 = <h:outputText value="#{user.hidden2}" /></li>
	</ol>
    </h:body>
</html>

3. Demo

URL : http://localhost:8080/JavaServerFaces/




How to pass new hidden value to backing bean in JSF(JSF 隐藏域传值到后台)_hiddenField


How to pass new hidden value to backing bean in JSF(JSF 隐藏域传值到后台)_jsf隐藏域_02


Download Source Code


Download It –  JSF-2-New-HiddenValue-Example.zip (10KB)


 

Reference

  1. JSF <h:inputHidden /> JavaDoc

http://www.mkyong.com/jsf2/how-to-pass-new-hidden-value-to-backing-bean-in-jsf/

标签:JSF,String,backing,value,bean,new,hidden,public
From: https://blog.51cto.com/u_16200746/6803335

相关文章

  • values取出数组python
    如何使用Python取出数组中的值简介在Python中,我们可以使用各种方法来处理数组(也称为列表)中的值。本文将向您展示如何使用Python取出数组中的值。我们将使用Python中的内置函数和语法来解决这个问题。步骤概述下表概述了完成此任务的步骤:步骤描述步骤1创建一个包含......
  • android studio Attribute value must be constant
    解决"androidstudioAttributevaluemustbeconstant"错误的步骤当我们在使用AndroidStudio开发应用程序时,有时会遇到"Attributevaluemustbeconstant"的错误。该错误通常发生在我们尝试在XML布局文件中设置属性的值时。下面是解决该错误的步骤,以及每个步骤需要做......
  • java map 自定义排序key value
    JavaMap自定义排序KeyValue在Java中,Map是一种经常用到的数据结构,它提供了一个存储键值对的集合。默认情况下,Map中的元素是按照插入顺序进行排序的。然而,在某些情况下,我们可能需要按照自定义的方式对Map进行排序,本文将介绍如何在Java中自定义排序Map的Key和Value......
  • 【863】Calculate records based on the same value
    Supposewehaveadataframe,ithasacolumnof"country".Itlistsdifferentnamesofcountry'snames,andforonecountrymaybeithasmultiplerecords.Ourtaskistocreateanewdataframewhichincludethecountry'snamesandthei......
  • jquery根据key获取map的value
    jQuery根据key获取map的value在开发web应用程序时,我们经常需要使用JavaScript来处理和操作数据。其中,使用键值对存储和管理数据是最常见的一种方式之一。在JavaScript中,我们可以使用对象或者Map来实现键值对的存储。这篇文章将重点介绍如何使用jQuery根据键获取Map中的值。Map是......
  • 解决ValueError: Tokenizer class LLaMATokenizer does not exist or is not currentl
    ##问题:loadLLaMA7b的weights的时候报错:ValueError:TokenizerclassLLaMATokenizerdoesnotexistorisnotcurrentlyimported.##出现原因:新版transformers里面llama的tokenizer命名为LlamaTokenizer但是旧的模型里面的tokenizer叫LLaMATokenizer##解决方案:改动t......
  • 零售EDI:True Value EDI 需求分析
    TrueValue是一家享有盛誉的卖场,经营范围广泛:包括家居用品、工具、园艺用品等。据悉,TrueValue已将EDI纳入其供应商评级中。TrueValue将EDI作为对其供应商的一项要求,这意味着如果你希望与TrueValue建立合作关系,需要尽快具备EDI能力。一旦被告知需要通过EDI向Tr......
  • @cookievalue注解
    @cookieValue是springMvc中的注解:@CookieValue的作用用来获取Cookie中的值@CookieValue参数1、value:参数名称2、required:是否必须3、defaultValue:默认值@CookieValue使用案例 /***验证用户信息*@paramtoken*@return*/@GetMapping("verify")//直接获......
  • 工具 | pip报错 ValueError: check_hostname requires server_hostname解决方法
    使用python的pip安装第三方包的时候会出现这个问题。报错信息:ValueError:check_hostnamerequiresserver_hostname解决方法:​ 你可能打开了代理,你可以关闭代理试一下。如果不行,重启电脑再试一下。......
  • redis 删除某个keyvalue 命令
    Redis删除某个键值对的命令Redis是一种高性能的键值对存储数据库,它提供了丰富的命令用于对数据进行操作。其中,删除某个键值对是常见的操作之一。本文将介绍Redis中删除某个键值对的命令,并提供相应的代码示例。DEL命令Redis中删除某个键值对的命令是DEL。它可以用于删除单个键值......