`
tmj_159
  • 浏览: 707356 次
  • 性别: Icon_minigender_1
  • 来自: 永州
社区版块
存档分类
最新评论

JSF 由于 rendered 导致 得到属性值为null的解决办法

    博客分类:
  • jsf
阅读更多

前段时间用JSF时遇到如下问题.

问题描叙:

      页面有一个 单选控件(h:selectOneRadio) 添加 ajax 支持(a4j:support event="onclick" reRender=""),当选择某个选项的时候会有不同的操作,因此界面会有不同的展示.

      可变化部分用到 rendered 属性在后台控制展现逻辑.

      问题出现:点击不同的选项,可变化部分的页面展示没有问题,提交(SUBMIT)的时候,不会变化的部分取值没有问题,变化展示部分的属性值,不能取到,跟踪之后发现值为null.(不存在属性名称没对应上的错误)

      

      解决办法1.

      用decode()方法

     

// cform 为表单 id
UIComponent component=FacesContext.getCurrentInstance().getViewRoot().findComponent("cform");

//day 为 文本输入框id
if(component!=null){
((UIInput)component.findComponent("day")).decode(FacesContext.getCurrentInstance());

//day 为bean 中属性值
day=(String)(((UIInput)component.findComponent("day")).getSubmittedVale());

 

    解决办法2

    用session 在 set 单选控件属性值的时候 把 属性值放入session中

  

public void setXXX(String XXX){
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("xxx",xxx);
}
//然后在构造方法中把xxx值从session 中赋上去
public ClassName(){
xxx=FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("xxx");
}

   

   

    

2
0
分享到:
评论

相关推荐

    JSF中文问题解决方法完整版

    这篇博文“JSF中文问题解决方法完整版”提供了关于如何处理JSF框架在处理中文字符时可能出现的问题的解决方案。JSF作为Java EE的一部分,常常用于企业级应用开发,但处理中文字符时可能会遇到编码不兼容、乱码等问题...

    jsf第一个例子 jsf架包 jsf实例

    5. **EL(Expression Language)**:EL是用于获取和设置Managed Beans属性的简洁语法,常用于JSF页面中绑定组件的值。 6. **jsf架包**:JSF相关的库通常被打包成JAR文件,这些文件包含了JSF API和实现。在Java项目...

    JSF Java Server Faces (JSF)框架

    从应用开发者的角度看,两种框架十分相似,但是JSF可能会得到更多的支持,因为JSF是Java的标准。在未来的发展中,有可能所有的J2EE应用服务器都需要支持JSF。 Java Server Faces技术好处  引入了基于组件和事件...

    JSF的工作方式 JSF架构 JSF模型 JSF事件类型

    4. **更新模型值(Update Model Values)**:验证成功后,JSF会将组件的值更新到模型中,通常是更新管理Bean的属性。这将业务逻辑与用户界面分离,使得模型可以独立于视图和控制器变化。 5. **调用应用程序(Invoke...

    jsf实例jsf实例 JSF学习 JSF jar包 JSF

    jsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSFjsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSF

    jsf分页 jsf分页 jsf分页

    以PrimeFaces为例,`p:dataTable`组件自带了分页功能,只需配置`rows`属性(每页记录数)和`paginator`属性(启用分页),它会自动处理分页的前后端逻辑。 4. **自定义分页**: 如果组件库提供的分页功能不能满足...

    JSF中文教程jsf

    **数据绑定** 是JSF的一个关键特性,它将组件的值与后台bean的属性直接关联。这使得界面的更改能够直接影响到模型,反之亦然。**Managed Beans** 是JSF中的业务逻辑载体,它们负责处理应用的业务规则和数据管理。 *...

    精通JSF中文教程精通JSF中文教程

    EL是一种简洁的脚本语言,用于在JSF中获取和设置Managed Beans的属性值。它允许在JSF视图中直接引用后台Bean的属性,简化了数据绑定的过程。 **6. 视图和导航** JSF的视图通常由Facelets文件(.xhtml)组成,它们...

    jsf入门列子和jsf与Tiles结合

    `<navigation-rule>`标签定义了根据不同的`from-outcome`值(即`UserBean`中的`outcome`属性值)进行页面跳转。例如,当`outcome`为"success"时,用户将被重定向到`welcome.jsp`,而"failure"则对应`failure.jsp`。`...

    JSF上传 JSF大文件上传 JSF上传代码 JSF上传源代码

    1. **前端界面**:使用JSF的UI组件(如`<p:fileUpload>`)创建上传表单,设置相关的属性,如允许的文件类型、大小限制等。 2. **后端处理**:在Managed Bean中定义方法处理文件上传事件,接收`FileUploadEvent`对象...

    jsf实现登录功能

    这里的`#{loginBean.username}`和`#{loginBean.password}`是EL(Expression Language)表达式,它们将表单中的值绑定到后台 Managed Bean 的属性上。`loginBean.login`则是当用户点击登录按钮时触发的动作。 在后端...

    JSF包,jsf包,JSF包,jsf包

    **生命周期**:JSF有七个阶段,包括恢复视图、应用请求值、处理验证、更新模型值、调用应用逻辑、渲染响应和结束请求。这个生命周期确保了数据的有效性,提供了错误处理,并管理了组件状态。 **JSF的优点**: 1. **...

    core jsf 1.2 jsf 核心

    JSF 1.2支持资源包,允许开发者为不同地区和语言提供本地化的消息和标签。通过`<f:loadBundle>`标签,可以加载相应的资源文件。 ### 10. 整合其他技术 JSF 1.2能够很好地与其他Java EE技术(如EJB、JPA、CDI等)...

    jsf 用户登陆界面

    JSF(JavaServer Faces)是Java平台上用于构建Web应用程序的框架,特别适合开发用户界面。在JSF中,用户登录界面是常见的功能模块,用于验证用户的身份。下面将详细讲解如何在JSF中创建一个用户登录界面。 1. **JSF...

    jsf框架入门视频资料

    它可以访问JavaBeans属性,执行方法,并且可以与JSF组件属性结合使用。例如,`#{bean.property}`可以获取或设置JavaBean的属性值。 **5. JSF和Java Servlets** 尽管JSF提供了一种更高级别的抽象,但其底层仍然依赖...

    JSF文件下载实现

    **JSF 文件下载实现** 在JavaServer Faces (JSF)框架中,实现文件下载功能是一项常见的需求。在本文中,我们将深入探讨如何使用JSF来实现在Web应用程序中下载文件的功能。主要涉及的关键知识点包括: 1. **JSF上...

    JSF开发文档

    JSF(JavaServer Faces)是...总而言之,JSF为Java Web应用程序的开发提供了一套全面的解决方案,让不同角色的开发人员可以更专注于他们的专业领域,而不必深入了解其他领域的技术细节,从而简化了Web开发的复杂性。

    JSF帮助文档

    标签“jsf”直接指向JSF技术,意味着文档内容可能涉及JSF的使用、教程、最佳实践或者是解决JSF开发中遇到的问题。由于提供的文件内容主要是邮件头信息和HTML格式的元数据,它们并不直接包含JSF的具体知识点。但是,...

Global site tag (gtag.js) - Google Analytics