📄 springfacesutil.java
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -