`

FacesUtil

    博客分类:
  • Jsf
阅读更多

 

public class FacesUtil {
    private static Logger logger = Logger.getLogger(FacesUtil.class);

    public static Object getValueExpression(String expressionString, Class cla) {
        FacesContext fc = FacesContext.getCurrentInstance();
        ValueBinding vb = fc.getApplication().createValueBinding(expressionString);//"#{"beanName"}"
        Object o = null;
        if (vb != null) {
            o = vb.getValue(fc);
        }
        return o;
    }

    public static Object getBackBeanByName(String backBeanName) {
        FacesContext fc = FacesContext.getCurrentInstance();
        VariableResolver variableResolver;
        variableResolver = fc.getApplication().getVariableResolver();
        return variableResolver.resolveVariable(fc, backBeanName);       
    }
   
   
    public static Application getApplication() {
        FacesContext fc = FacesContext.getCurrentInstance();
        if (fc != null) {
            return fc.getApplication();
        } else {
            return null;
        }
    }

    /**
     * @return ApplicationContext
     */
    public static ApplicationContext getApplicationContext() {
        if (FacesContext.getCurrentInstance() != null) {
            return FacesContextUtils.getRequiredWebApplicationContext(FacesContext.getCurrentInstance());
        } else {

        }
        return FacesContextUtils.getRequiredWebApplicationContext(FacesContext.getCurrentInstance());
    }

    /**
     * Get parameter value from request scope.
     *
     * @param name
     *            the name of the parameter
     * @return the parameter value
     */
    public static String getRequestParameter(String name) {
        return (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(name);
    }

    public static String getContextPath() {
        return FacesContext.getCurrentInstance().getExternalContext().getRequestContextPath();
    }

    public static String getAssetsPath() {
        return FacesContext.getCurrentInstance().getExternalContext().getRequestContextPath() + "/assets/";
    }

    public static String getAssetsRootPath() {
        return "assets/";
    }

    /**
     * Get request
     *
     * @return the request object
     */
    public static HttpServletRequest getRequest() {
        return (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
    }

    /**
     * Get response
     *
     * @return the response object
     */
    public static HttpServletResponse getResponse() {
        return (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
    }

    /**
     * Get Sesstion
     *
     * @return the sesstion object
     */
    public static HttpSession getSession() {
        if (FacesContext.getCurrentInstance() == null) {
            return null;
        } else {
            return (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(true);
        }

    }

    public static void setSessionAttribute(String name,Object obj) {
        HttpSession s = getSession();       
        if (s != null) {           
             s.setAttribute(name,obj);
        }
    }
   
    public static Object getSessionAttribute(String name) {
        HttpSession s = getSession();
        if (s == null) {
            return null;
        } else {
            return s.getAttribute(name);
        }

    }

    public static UserSecurityMetaVo getUserSecurityMeta() {
        return (UserSecurityMetaVo) FacesUtil.getSession().getAttribute(Constants.USER_SECURITY_META);
    }

    /**
     * Add information message.
     *
     * @param msg
     *            the information message
     */
    public static void addInfoMessage(String msg) {
        addInfoMessage(null, msg);
    }

    /**
     * Add information message to a sepcific client.
     *
     * @param id
     * @param msg
     *            the information message
     */
    public static void addInfoMessage(String id, String msg) {
        FacesContext.getCurrentInstance().addMessage(id, new FacesMessage(FacesMessage.SEVERITY_INFO, msg, msg));
    }

    /**
     * Add error message.
     *
     * @param msg
     *            the error message
     */
    public static void addErrorMessage(String msg) {
        addErrorMessage(null, msg);
    }

    /**
     * Add error message to a sepcific client.
     *
     * @param id
     * @param msg
     *            the error message
     */
    public static void addErrorMessage(String id, String msg) {
        FacesContext.getCurrentInstance().addMessage(id, new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, msg));
    }  
   
    public static String getConfigurationItem(String name) {
        ConfigurationService s=(ConfigurationService)Context.getBean("configurationService");
        return s.getConfigtationValue(name);
    }

}

分享到:
评论

相关推荐

    json示例.docx

    在该代码中,我们还可以看到其他一些技术点,例如 FacesUtil.getHttpServletResponse()方法获取了HttpServletResponse对象,然后使用其来设置响应头和输出响应体。这种方式通常用于在Web应用程序中返回JSON数据给...

    Core JavaServer Faces, Second Edition (JSF)part1

    9. **实用工具类和辅助类**:JSF提供了一些实用工具类,如FacesUtil,可以帮助开发者更有效地工作。这部分会讨论这些类的功能和用法。 10. **部署描述符**:JSF应用程序的配置通常在部署描述符(faces-config.xml)...

    解压软件 ZArchiver.apk

    解压软件 ZArchiver.apk

    毕设项目:基于SSM框架+mysql开发的教务管理系统分前后台【附含源码+数据库+毕业论文】

    二、技术实现 后端:spring,springmvc,mybatis,mysql 前端采用:vue,css 运行环境及开发工具:jdk8,idea或者eclipse,Navicat 三、系统功能 系统登录角色分为:管理员、老师、学生 用户登录 用户注册 首页 个人中心 修改密码 个人信息 班级管理 成绩类型管理 公告类型管理 教程类型管理 第几节管理 院系管理 职称管理 专业管理 公告管理 课程管理 成绩管理等功能

    设计和仿真一个用于控制双质量弹簧阻尼系统位移的多变量控制系统.docx

    设计和仿真一个用于控制双质量弹簧阻尼系统位移的多变量控制系统.docx

    1-全国各地级市金融机构本外币与人民币存款和贷款2010-2020年-社科数据.zip

    这份数据集详细记录了2010至2020年间中国各城市金融机构的本外币存款和人民币贷款情况。数据涵盖了商业银行、农村合作银行、信用社等多种金融机构的存款数据,包括本币和外币存款情况。这些数据不仅反映了各城市金融机构的存款规模,也为分析金融市场的发展趋势、资金流动状况及城市经济活动提供了重要视角。数据来源于中国区域统计年鉴和各省市统计年鉴,以面板数据形式呈现,包含1948个样本。通过这些数据,金融机构、政策制定者、研究人员和投资者可以深入了解各城市的金融市场格局,辅助做出更准确的决策和分析。

    开发一个带有 PCIe Endpoint 设备的驱动程序并实现热插拔功能.docx

    开发一个带有 PCIe Endpoint 设备的驱动程序并实现热插拔功能

    NovaMaker-2.4.29-win-64-bit.zip

    NovaMaker-2.4.29-win-64-bit.zip

    Spring Boot相关的资源.txt

    Spring Boot相关的资源.txt

    Hive简易操作入门中文最新版本

    本文档主要讲述的是Hive简易操作入门;本流程中以putty为例,如果使用别的SSH客户端,界面上会不同,基本过程相似。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看

    ASP+ACCESS软件信息发布系统设计(源代码+论文+开题报告+任务书+答辩PPT)(源代码+论文+说明文档).zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。

    浅析Sybase数据库系统性能调优中文最新版本

    本文档主要讲述的是浅析Sybase数据库系统性能调优;性能调优”是对应用程序的性能优化。SYBASE数据库“性能调优”的主要目的是减少对系统公共资源的争用。对sybase数据库系统的性能进行优化,是一项长期且受诸多因素影响的工作,希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看

    用VBS制作自己的进度条

    用VBS制作自己的进度条

    校际运动会管理系统程序设计基础课程设计报告.doc

    校际运动会管理系统程序设计基础课程设计报告.doc

    ORACLECRS日常维护命令中文最新版本

    本文档主要讲述的是ORACLE CRS日常维护命令;希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看

    [net毕业设计]ASP.NET教务信息管理系统的设计与实现(源代码+论文).zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。

    1-全国各省商品市场分割指数相对价格法计算过程+计算结果2000-2020年-社科数据.zip

    全国各省商品市场分割指数相对价格法的计算过程和结果数据集提供了2000至2020年间中国各省份市场分割的量化分析。该数据集基于12大类商品,包括粮食、纺织品、服装鞋帽等,利用地区间商品价格差异来分析市场分割状况。核心计算方法为相对价格法,通过比较不同地区同一商品的价格指数,来衡量市场分割程度。数据集包含原始数据、计算过程和最终结果,原始数据主要来源于统计年鉴中的商品价格指数。计算步骤包括计算历年资本边际产出比值、求均值、方差等,最终得出资本市场一体化程度。该数据集为研究中国国内市场一体化进程提供了重要参考。

    1-全国上市公司绿色投资者原始数据+计算代码+参考文献2008-2022年-社科数据.zip

    全国上市公司绿色投资者数据集(2008-2022年)提供了中国上市公司在环保和可持续发展方面的资金吸引力的详细视角。该数据集涵盖了股票代码、年份、会计年度、股票简称、STPT标识、行业名称及代码,以及绿色投资者数量等关键指标。它记录了超过42,000个观测值,涉及4,700多家样本企业,为投资者、金融分析师、政策制定者和环境研究者提供了评估企业环保表现、理解绿色投资趋势以及制定相关策略的辅助工具。数据集包括是否有绿色投资者的虚拟变量,以及绿色投资者数目加1的自然对数两个指标,可以用于衡量企业绿色治理情况。这些数据不仅展示了中国上市公司在环境保护方面的资金流向,也反映了投资者对绿色投资的关注动态,对于研究绿色投资与企业行为的关系提供了宝贵的实证数据支持。

    15da2b5d3ceeddc8af2f6a7eed26d7e0.JPG

    15da2b5d3ceeddc8af2f6a7eed26d7e0.JPG

    前端工程化实践课程下载

    视频课程下载——前端工程化实践

Global site tag (gtag.js) - Google Analytics