struts2里用struts-menu须注意的地方

1.0

menu-config.xml为菜单配置文件!

在struts1.2的struts-config.xml文件中加入如下代码:
<plug-in className="net.sf.navigator.menu.MenuPlugIn">
<set-property property="menuConfig" value="/WEB-INF/menu-config.xml"/>
</plug-in>

参数是:menuConfig 对应值是:菜单配置文件path!

2.0

menu-config.xml文件中
注意添加条目时,一定要修改Item name属性,不能重复哦,否则无法正常显示!

3.0
struts2中配置struts-menu

以前在struts1.x中需要在struts-config.xml中配置<plug-in>来引入struts-menu,现在在只需要在web.xml中配置一个监听就可以了
<listener>
<listener-class>
net.sf.navigator.menu.MenuContextListener
</listener-class>
</listener>


----MenuContextListener.java部分源代码:--------

public class MenuContextListener implements ServletContextListener {
private static Log log = LogFactory.getLog(MenuContextListener.class);
private ServletContext ctx;


private String menuConfig = "/WEB-INF/menu-config.xml";


public void contextInitialized(ServletContextEvent sce) {
ctx = sce.getServletContext();

if (log.isDebugEnabled()) {
log.debug("Starting struts-menu initialization");
}

// check for menuConfigLocation context-param
String override =
sce.getServletContext().getInitParameter("menuConfigLocation");
if (override != null) {
if (log.isDebugEnabled()) {
log.debug("using menuConfigLocation: " + override);
}
this.menuConfig = override;
}

MenuRepository repository = new MenuRepository();
repository.setLoadParam(menuConfig);


......
对比struts1中的插件加载方式,这个舒心多了,但是struts2中菜单配置文件一定是:menu-config.xml,
struts1中则可以自己命名!

你可能感兴趣的:(Web,xml,.net,struts)