如题,请问是否有方法? 基本原则是不使用Servlet、Filter。

解决方案 »

  1.   

    用 property 标签。
    bean 类里 set 一下就可以了。
      

  2.   

    问题不是很清楚是说获取当前工程名称??在启动的init方法去获取,后面都可以使用
      

  3.   

    一个应用包aaa.war,在部署的时候完全可能被改名为bbb.war,我希望程序在程序时得到这个bbb。要求是不能修改web.xml,不能使用Servlet和Filger,框架是Spring。所以我就想在bean的init方法去做这个事情。各位高手有没有遇到过这种场景,有没有思路指点一下?
      

  4.   

    在spring里面配置一个bean,启动调用init()方法获取当前项目的ContextPath,setAttribute就可以了,类似与这个项目的一个全局变量
      

  5.   


    嗯,现在就是卡在怎么得到这个ContextPath呢。
      

  6.   


    嗯,现在就是卡在怎么得到这个ContextPath呢。public class ResourcePathExposer implements ServletContextAware {
    private ServletContext servletContext; public void init() {
    getServletContext().setAttribute("ctx", getServletContext().getContextPath());

    }
    public ServletContext getServletContext() {
    return servletContext;
    }
    public void setServletContext(ServletContext servletContext) {
    this.servletContext = servletContext;
    }


    }
      

  7.   


    嗯,现在就是卡在怎么得到这个ContextPath呢。public class ResourcePathExposer implements ServletContextAware {
    private ServletContext servletContext; public void init() {
    getServletContext().setAttribute("ctx", getServletContext().getContextPath());

    }
    public ServletContext getServletContext() {
    return servletContext;
    }
    public void setServletContext(ServletContext servletContext) {
    this.servletContext = servletContext;
    }


    }收到,谢高手!