`
iamlibo
  • 浏览: 68220 次
社区版块
存档分类
最新评论

FacesContext的一点经验

JSF 
阅读更多

JSF 的FacesContext 在使用中遇到这样的一个问题,就是向FacesContext中加入的FacesMessages只有第一次能够显示出来,第二次没有办法显示。经多次试验,最终发现是我自己在基类中写的getFacesContext()方法有问题。

我是这样写的:

private FacesContext facesContext;
public FacesContext getFacesContext() {
if (this.facesContext==null)
this.facesContext =FacesContext.getCurrentInstance();
return FacesContext.getCurrentInstance();
}
然后在子类中直接调用这个方法就可以得到FacesContext了。

想法是好的,但是并没有仔细了解FacesContext的实现。

其实FacesContext.getCurrentInstance()就已经能够每调用的时候都在上下广得到同一个实例了。不必再象我这样写了。反而会画蛇添足。

改成这样就可以了。


public FacesContext getFacesContext() {
return FacesContext.getCurrentInstance();
}


<!----> Technorati : facesContext

分享到:
评论

相关推荐

    jsf的facesContext上下文工具类

    jsf的facesContext上下文工具类

    JSF FacesContext 详解

    JSF FacesContext 详解 FacesContext 是 JSF 框架中一个核心组件,它负责管理 JSF 请求的状态信息。在 Faces API 中,FacesContext 和 ExternalContext 是两个经常使用的类,本文将详细介绍 FacesContext 的编程...

    jsf几个常用取值方法和技巧总结

    本文将深入探讨JSF中获取Managed Bean或解析表达式的几种常见方法,以及如何利用FacesContext和Application对象来操纵组件树和管理其他资源。 1. 获取Managed Bean或解析表达式 - 方法一:通过ValueBinding 这是...

    java server face重定向

    FacesContext facesContext = FacesContext.getCurrentInstance(); ExternalContext externalContext = facesContext.getExternalContext(); externalContext.redirect("newPage.xhtml"); // 这里不再执行任何...

    第9章 JSF的托管Bean和国际化课件及源程序

    FacesContext facesContext = FacesContext.getCurrentInstance(); ResourceBundle bundle = facesContext.getApplication().getResourceBundle(facesContext, "bundleName"); String localizedText = bundle....

    UIUtil.rar_Java编程_Java_

    FacesContext facesContext = FacesContext.getCurrentInstance(); if (facesContext != null) { return (ServletContext) facesContext.getExternalContext().getContext(); } return null; } } ``` 在...

    JSF中文教程(文档类型)

    **JSF(JavaServer Faces)** 是一个Java平台上的用户界面框架,主要用于构建Web应用程序。JSF的核心思想是提供一种组件化和事件...无论你是初学者还是有经验的开发者,都能从中找到所需的信息,提升你的JSF开发技能。

    JSF自定义转换器验证器实例

    public Object getAsObject(FacesContext context, UIComponent component, String value) { if (value == null || value.isEmpty()) { return null; } try { return Integer.parseInt(value); } catch ...

    JSF生命周期及组件开发P

    JSF的生命周期允许开发者灵活地插入自定义的行为,比如通过调用`FacesContext.responseComplete()`或`FacesContext.renderResponse()`来改变流程。理解生命周期对于有效地编写JSF应用程序至关重要,因为它指导了何时...

    JSF文件下载实现

    FacesContext context = FacesContext.getCurrentInstance(); // 获得ServletContext对象 ServletContext servletContext = (ServletContext) context .getExternalContext().getContext(); // 取得文件的绝对...

    struts错误的总结

    在学习Struts的过程中,新手可能会遇到各种错误,本文将针对其中一种常见问题进行详细解答,即"JSF运行时出现javax.servlet.jsp.JspException: Cannot find FacesContext"的处理方法。 这个问题通常是由于在JSF应用...

    自定义 JSF 组件

    - `decode(FacesContext context)`:处理请求参数并更新组件状态。 - `encodeBegin(FacesContext context)`:编码组件的开始标签。 - `encodeEnd(FacesContext context)`:编码组件的结束标签。 - `encodeChildren...

    JSF初学问题

    JSF\JSF运行时出现javax.servlet.jsp.JspException Cannot find FacesContext处理方法

    JSF如何使用ExternalContext类

    FacesContext facesContext = FacesContext.getCurrentInstance(); ExternalContext externalContext = facesContext.getExternalContext(); // 获取Session对象及其特性 Map, Object&gt; sessionMap = (Map, Object&gt;)...

    创建JSF自定义组件

    public void encodeBegin(FacesContext context, UIComponent component) throws IOException { MyCustomComponent customComponent = (MyCustomComponent) component; // 编码HTML } @Override public void ...

    JSF框架实例

    它创建一个FacesContext对象,该对象存储了应用程序的所有数据,并在整个JSF生命周期中起着关键作用。 JSF生命周期分为六个阶段: 1. 恢复视图:在这个阶段,JSF寻找或创建与请求关联的组件树,这个组件树代表了...

    jsf获取表单的两种方法

    FacesContext context = FacesContext.getCurrentInstance(); UIInput input = (UIInput) context.getViewRoot().findComponent(":myForm:username"); if (input != null) { String username = (String) input....

    JSF in Action

    总之,《JSF in Action》作为一本实战书籍,旨在帮助读者从基础到高级全面掌握JSF技术,无论你是初学者还是有经验的开发者,都能从中受益。通过学习这本书,你可以掌握JSF的核心特性,从而更高效地开发出稳定、可...

    [JavaServer Faces编程]一书源代码

    6. **FacesContext**:作为JSF的核心类,FacesContext提供了访问当前请求上下文信息的接口,包括请求参数、会话状态、消息等。 7. ** Managed Beans**:Managed Beans是JSF中的主要业务对象,用于存储和管理应用...

    JSF API 帮助文档

    JavaScriptServer Faces(JSF)是Java平台上用于构建...对于初学者和经验丰富的JSF开发者来说,都是一个宝贵的参考资料。通过学习这份文档,开发者将能够更好地理解JSF的工作原理,创建功能丰富、健壮的Web应用程序。

Global site tag (gtag.js) - Google Analytics