为什么你要显式地获取ServletContext呢?在Servlet.init(ServletConfig con)里调用con.getServletContext();就可以得到了.

解决方案 »

  1.   

    如果你是在一个Servlet内
    ServletContext ctx = getServletConfig().getServletContext();如果不是在 Selvlet内,先把得到的ServletConfig传过去
      

  2.   

    提示说你的getServletContext不是静态的方法,必须实例话一个对象servletconfig才能调用
      

  3.   

    getServletContext();不是一个静态方法,所以不能直接用类名.getServletContext();的形式来调用,要有一个类的对象..
      

  4.   

    首先我肯定是知道要先获取一个实例,但我就是不知道怎样得到这个呀,还有就是我是在JAVA类中取这个CONTEXT,而不是在SERVLET中,有没什么办法呀
      

  5.   

    WEB-INF
    |      |
    |      |
    |     classes
    |           |
    |    |
    |    com
    |             |
    |      |
    |      util
    |         |
    |         |
    |         a.java
    |
    test.xml
    假如说现在的文件结构是这样的,那我现在a.java中怎样取得test.xml的路径呢?
    Servlet可以用context.getRealPath("/WEB-INF/test.xml"),但在java类中我不知要怎样取
      

  6.   

    你不是在Servlet中,但你总是在一个Web 应用中吧。只要是在一个Web应用中,最终都是与Servlet有关联的,换句话说,谁去调你的这个类?当然是一个Servlet,不管它是直接还是间接的。
      

  7.   

    用Servlet传一个context去,这是可以的,但我现在就是想可不可以在类中直接实例一个
      

  8.   

    这样不行,你必须要继承httpServlet
      

  9.   

    既然取context不可以,那我在类中怎样取test.xml的路径呢?
      

  10.   


    你的文件存放地点是依赖你的web 应用的,因此你要离开web 应用来获得这个文件路径是毫无道理的。如果你是想写个通用的函数或组件。根据分层的原则,应该在Servlet中得到文件的路径,将文件路径组为参数传到你的通用函数里去。
      

  11.   

    我们现在就说取路径,不光在WEB中有路径吧,在普通的JAVA应用中也该有要取路径的时候吧,所以那那位牛哥哥,教一下我怎样在JAVA中取路径吧。就像上面的那个文件结构,我在a.java中怎样取test.xml的路径呢。
      

  12.   

    路径你可以用 "../../../../test.xml"
      

  13.   

    路径你可以用 "../../../../test.xml"
    这样我发现是取不了路径的,我很早就试过这样.
      

  14.   

    很简单:
    1.先建一个配置文件如path.properties
      XMLPath=../WEB-INF/classes/com/util/test.xml
    (是你具体的路径,以后路径换了的话,只要改配置文件就可以了)
    2.然后读取:
    String XMLPath=null;
    try{
       InputStream is = getClass().getResourceAsStream("path.properties");
       Properties getFamily=new Properties();
       getFamily.load(is);
       XMLPath=getFamily.getProperty("XMLPath");
    }catch(Exception e){
       e.printStackTrace();
    }
      

  15.   

    medusagjf(郭婉仪)
    你的方法我知道,但我还是那句话,我要随时取路径,因为项目中有很多随机生成的文件,都是放在不同的地方.而不是要根据配置文件去取.