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

📄 usemenudisplayertag.java

📁 Struts Menu这是为基于JSP和Struts的应用程序提供的Web菜单框架。菜单可以在一个XML文件中定义
💻 JAVA
字号:
package net.sf.navigator.taglib.el;import java.util.Locale;import java.util.ResourceBundle;import javax.servlet.jsp.JspException;import javax.servlet.jsp.jstl.fmt.LocalizationContext;import javax.servlet.jsp.tagext.Tag;import net.sf.navigator.displayer.MenuDisplayer;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.struts.Globals;import org.apache.taglibs.standard.tag.common.fmt.BundleSupport;/** * This tag acts the same as net.sf.navigator.taglib.UseMenuDisplayerTag, except * that it allows JSTL Expressions in all it's attributes. * * @author Matt Raible * @version $Revision: 1.3 $ $Date: 2004/03/23 16:50:37 $ */public class UseMenuDisplayerTag    extends net.sf.navigator.taglib.UseMenuDisplayerTag {    private static Log log = LogFactory.getLog(UseMenuDisplayerTag.class);    private String name;    private String bundle;    private String config = MenuDisplayer.DEFAULT_CONFIG;    private String locale;    private String permissions;    private String repository;    public void setName(String name) {        this.name = name;    }    public void setBundle(String bundle) {        this.bundle = bundle;    }    public void setConfig(String config) {        this.config = config;    }    public void setLocale(String locale) {        this.locale = locale;    }    public void setPermissions(String permissions) {        this.permissions = permissions;    }    public void setRepository(String key) {        this.repository = key;    }    public UseMenuDisplayerTag() {        super();        init();    }    private void init() {        name = null;        bundle = null;        config = null;        locale = null;        permissions = null;        repository = null;    }    public void release() {        super.release();        init();    }    public int doStartTag() throws JspException {        evaluateExpressions();        // Default to JSTL Bundle to use (for EL Tag)        Tag tag = findAncestorWithClass(this, BundleSupport.class);        if (tag != null) {            BundleSupport parent = (BundleSupport) tag;            rb = parent.getLocalizationContext().getResourceBundle();        } else {            // check for the localizationContext in applicationScope, set in web.xml            LocalizationContext localization =                BundleSupport.getLocalizationContext(pageContext);            if (localization != null) {                rb = localization.getResourceBundle();            }        }        return super.doStartTag();    }    private void evaluateExpressions() throws JspException {        ExpressionEvaluator eval = new ExpressionEvaluator(this, pageContext);        String s;        if ((s = eval.evalString("name", name)) != null) {            super.setName(s);        }        if ((s = eval.evalString("bundle", bundle)) != null) {            super.setBundle(s);        }        if ((s = eval.evalString("config", config)) != null) {            super.setConfig(s);        }        if ((s = eval.evalString("locale", locale)) != null) {            super.setLocale(s);        }        if ((s = eval.evalString("permissions", permissions)) != null) {            super.setPermissions(s);        }        if ((s = eval.evalString("repository", repository)) != null) {            super.setRepository(s);        }    }}

⌨️ 快捷键说明

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