springfacesutil.java
来自「在JSF的faces-config.xml中及Spring的配置文件中查找bea」· Java 代码 · 共 61 行
JAVA
61 行
package cn.yuma.houseinfo.util;import javax.faces.FactoryFinder;import javax.faces.application.Application;import javax.faces.application.ApplicationFactory;import javax.faces.context.FacesContext;import javax.faces.el.ValueBinding;import javax.servlet.ServletContext;import org.springframework.context.ApplicationContext;import org.springframework.web.context.support.WebApplicationContextUtils;/** * Spring与JSF BEAN查找工具 * * @author liyong * */public final class SpringFacesUtil { public SpringFacesUtil() { } /** * 从Spring中查找bean. * @param beanname String * @return Object */ public static Object findBean(String beanname) { ServletContext context = (ServletContext) FacesContext.getCurrentInstance(). getExternalContext().getContext(); ApplicationContext appctx = WebApplicationContextUtils. getRequiredWebApplicationContext(context); return appctx.getBean(beanname); } /** * 从JSF中查找bean. * @param beanname String * @return Object */ public static Object lookupBean(String beanname) { Object obj = getValueBinding(getJsfEl(beanname)).getValue(FacesContext. getCurrentInstance()); return obj; } private static ValueBinding getValueBinding(String el) { return getApplication().createValueBinding(el); } private static Application getApplication() { ApplicationFactory appFactory = (ApplicationFactory) FactoryFinder. getFactory(FactoryFinder.APPLICATION_FACTORY); //FactoryFinder.FACES_CONTEXT_FACTORY //FactoryFinder.RENDER_KIT_FACTORY return appFactory.getApplication(); } private static String getJsfEl(String value) { return "#{" + value + "}"; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?