⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 facescontextutil.java

📁 一个自娱自乐的demo 开发环境 apache-tomcat-6.0.16 Mysql 5.1.11 Jdk 1.6 文件结构如下 --MyGame -----MyGam
💻 JAVA
字号:
package com.hb.base.util;

import java.util.Map;

import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;

/**
 * @author 何 貝
 * 
 * JSF 上下文工具类
 * 
 */
public class FacesContextUtil {
	/**
	 * 取得ViewBean
	 * 
	 * @param beanName bean名称
	 * @return ViewBean
	 */
	@SuppressWarnings("unchecked")
	public static Object getViewBean(String beanName) {
		ExternalContext externalContext = getFacesContext().getExternalContext();
		Object managedBean = null;
		// get request map.
		Map<String, Object> requestMap = externalContext.getRequestMap();

		// Lookup the current bean instance in the request scope.
		managedBean = requestMap.get(beanName);
		if (managedBean != null) {
			return managedBean;
		}

		// Bean is not in the request scope. Get the session map then.
		Map<String, Object> sessionMap = externalContext.getSessionMap();
		// Lookup the current bean instance in the session scope.
		managedBean = sessionMap.get(beanName);

		if (managedBean != null) {
			return managedBean;
		}

		// Bean is also not in the session scope. Get the application map then.
		Map<String, Object> applicationMap = externalContext.getApplicationMap();

		// Lookup the current bean instance in the application scope.
		managedBean = applicationMap.get(beanName);

		if (managedBean != null) {
			return managedBean;
		}

		// Create ManagedBean
		// JSF1.2 Implements

		return getFacesContext().getELContext().getELResolver().getValue(getFacesContext().getELContext(),
				null, beanName);

		// JSF1.1 Implements
		// return
		// getFacesContext().getApplication().getVariableResolver().resolveVariable(getFacesContext(),
		// beanName);
	}

	/**
	 * 取得 FacesContext
	 * 
	 * @return FacesContext
	 */
	public static FacesContext getFacesContext() {
		FacesContext facesContext = FacesContext.getCurrentInstance();

		return facesContext;
	}

	/**
	 * 取得 RequestParameterMap
	 * 
	 * @return RequestParameterMap
	 */
	@SuppressWarnings("unchecked")
	public static Map getRequestParameterMap() {
		return getFacesContext().getExternalContext().getRequestParameterMap();
	}

	/**
	 * 取得 HttpSession
	 * 
	 * @return HttpSession
	 */
	public static HttpSession getSession() {
		HttpSession session = (HttpSession) getFacesContext().getExternalContext().getSession(false);
		return session;
	}

	/**
	 * 取得 HttpServletRequest
	 * 
	 * @return HttpServletRequest
	 */
	public static HttpServletRequest getRequest() {
		HttpServletRequest request = (HttpServletRequest) getFacesContext().getExternalContext().getRequest();
		return request;
	}

	/**
	 * 取得根目录路径
	 * 
	 * @return 根目录路径
	 */
	public static String getRealPath() {
		return ((ServletContext) getFacesContext().getExternalContext().getContext()).getRealPath("");
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -