📄 resourcebundletag.java
字号:
package org.jahia.taglibs.resourcebundle;import java.util.Locale;import java.util.ResourceBundle;import org.jahia.data.JahiaData;import org.jahia.exceptions.JahiaException;import org.jahia.utils.JahiaConsole;import java.io.*;import java.util.*;import javax.servlet.http.*;import javax.servlet.jsp.*;import javax.servlet.jsp.tagext.*;/** * Support for ResourceBundle within Jahia * If locale is not set, the locale used is the one returned by paramBean.getLocale() * * @author Khue Nguyen */public class ResourceBundleTag extends TagSupport { private static final String CLASS_NAME = ResourceBundleTag.class.getName(); private String resourceBundle = ""; private String resourceName = ""; private String localeLangage = ""; private String localeCountry = ""; private String localeVariant = ""; private Locale locale = null; public void setResourceBundle(String resourceBundle) { if ( resourceBundle == null ) resourceBundle = ""; this.resourceBundle = resourceBundle.trim(); } public void setResourceName(String resourceName) { if ( resourceName == null ) resourceName = ""; this.resourceName = resourceName; } public void setLocaleLangage(String localeLangage) { if ( localeLangage != null ) this.localeLangage = localeLangage.trim(); } public void setLocaleCountry(String localeCountry) { if ( localeCountry != null ) this.localeCountry = localeCountry.trim(); } public void setLocaleVariant(String localeCountry) { if ( localeVariant != null ) this.localeVariant = localeVariant.trim(); } public int doStartTag() { HttpServletRequest request = (HttpServletRequest)pageContext.getRequest(); JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData"); if (jData == null) { HashMap tempEngineMap = (HashMap) request.getAttribute("org.jahia.engines.EngineHashMap"); jData = (JahiaData) tempEngineMap.get("jData"); } ResourceBundle res = null; String resValue = null; if ( localeLangage.equals("") ){ locale = jData.params().getLocale(); } else { locale = new Locale(localeLangage,localeCountry,localeVariant); } try { res = ResourceBundle.getBundle(resourceBundle,locale); resValue = res.getString(resourceName); } catch ( MissingResourceException mre ) { JahiaConsole.println(CLASS_NAME+".doStartTag()",mre.getMessage()); resValue = ""; } if (resValue != null) { try { JspWriter out = pageContext.getOut(); out.print( resValue ); } catch (IOException ioe) { JahiaConsole.println(CLASS_NAME+"doStartTag", ioe.toString()); } } return SKIP_BODY; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -