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

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 的编程...

    netbeans重定向

    FacesContext facesContext = FacesContext.getCurrentInstance(); ``` 2. **从FacesContext中获取响应对象**: ```java HttpServletResponse response = (HttpServletResponse) facesContext....

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

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

    JSF初学问题

    ### JSF初学问题:解决javax.servlet.jsp.JspException: Cannot find FacesContext异常 #### 一、背景介绍 JavaServer Faces (简称JSF) 是一个用于构建基于组件的用户界面的标准Java EE技术。它简化了Java Web应用...

    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应用程序至关重要,因为它指导了何时...

    struts错误的总结

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

    JAVA本地文件下载

    `FacesContext` 是JavaServer Faces (JSF) 框架中的核心类之一,它为整个请求周期提供了上下文环境。在本例中,`FacesContext` 被用来完成响应过程,确保所有的组件事件和动作都被处理完毕。 ##### 2.3 文件下载...

    Uploading and Downloading Files in Web Dynpro Java

    FacesContext facesContext = FacesContext.getCurrentInstance(); HttpServletResponse response = (HttpServletResponse) facesContext.getExternalContext().getResponse(); response.reset(); response....

    xpage不支持@UserRoles公式解决方法

    FacesContext context = FacesContext.getCurrentInstance(); // 获取当前页面的文档 DominoDocument document = (DominoDocument) context.getViewRoot().getViewMap().get("document"); // 获取当前文档...

    JSF和Spring集成.doc

    - `findBean(String beanName)` 方法用于从 Spring 中查找 bean,该方法通过当前 `FacesContext` 获取 `ServletContext`,进而获取 `ApplicationContext`,最终调用 `getBean` 方法获取指定名称的 bean。...

    JSP 自定义验证器

    这通常通过提供一个带有`validateXxx`签名的方法来完成,该方法返回`void`类型,并接收`FacesContext`, `UIComponent`, `Object`三个参数。这样,JSF框架在表单提交时会自动调用该方法进行验证。 ```java package ...

    JSF如何使用ExternalContext类

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

Global site tag (gtag.js) - Google Analytics