如题,Configuration.setClassForTemplateLoading(this.getClass(),"WEB-INF/user_base"),然后在下面getTemplate时参数我写/default/index.ftl,但是提示找不到这个ftl,应该是参数写的不对,应该是写,请大家帮忙.谢谢

解决方案 »

  1.   

    你弄错了Configuration.setClassForTemplateLoading(this.getClass(),"WEB-INF/user_base")
    是根据你this.getClass()类的包路径 + WEB-INF/user_base
    这显然是不正确的!
    假如你的this.getClass()包名为 com.freeer 而你的ftl文件在com.freeer.template包(也就是目录)下
    Configuration.setClassForTemplateLoading(this.getClass(),"template");
    这回就对了!
      

  2.   

    感谢帮忙,也就是说ftl需要跟类放到一起是这样吗?我去试试,感谢.
      

  3.   

    你好,我还有个问题,如果想用WEB-INF/user_base这样的路径,那么应该怎么写呢?
      

  4.   

    String templatePath = request.getRealPath("/") + "WEB-INF/user_base/"; //你测试下路径是否少'/' cfg.setDirectoryForTemplateLoading(new File(templatePath ));
      

  5.   

    呃,我看错了,不是setClass那个方法了.不好意思.我去实验.感谢帮忙.
      

  6.   

    呵呵
    按照你所说的我做出来了,但是我把项目打包jar后测试为什么就不行了?
      

  7.   

    setClassForTemplateLoading方法中的参数是什么类型啊?有代表什么意思啊?