首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

JSF 怎样得到request的值,该如何处理

2012-01-21 
JSF 怎样得到request的值FacesContextcontextFacesContext.getCurrentInstance()Maprequestcontext.get

JSF 怎样得到request的值
FacesContext   context   =   FacesContext.getCurrentInstance();
Map   request=context.getExternalContext().getRequestMap();
String   userId=(String)request.get( "id ");
Map   session=context.getExternalContext().getSessionMap();
String   name=(String)session.get( "name ");
System.out.println(userId);
System.out.println(name);

打印如下:
null
admin

为什么Request的值去不到?只能取到session里面的值啊?在线等待,分不够再加...

[解决办法]
想取参数用这个:
(String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get( "name ");
[解决办法]
关注
[解决办法]
ExternalContext().getRequestParameterMap().get()可以获得。
你返回NULL可能是你书写上的错误。有两种方法。
一、
如在你的页面中有 <input type= "hidden " name= "classid " value= "1 ">
注意要写在form中,并且要用name而不是id.
ExternalContext().getRequestParameterMap().get( "classid ")可以得到。

第二种:
<h:form id= "f ">
<input type= "hidden " id= "classid " value= "1 ">
</h:form>
ExternalContext().getRequestParameterMap().get( "f:classid ")可以得到。

以上方法就可了,写id的时候,jsf会把form的id加进去

热点排行