那個明顯不行,關鍵是,我用了war打包了,不打包都沒事.

解决方案 »

  1.   

    這個問題,其實就是,weblogic下打包部署後,取得文件路徑的問題我搜索了一下,早在2002年,就有好多人提出這個問題,但是,沒有一個得到最終的答案. 難道說,這個問題就無解了嗎? 我感覺,如果,weblogic再服務器上,做一下改進,能夠自動解壓.問題就不會出現了,我想,這個對這麼一個有實力的公司來說應該不是很難啊,而,他至今都沒有這麼做,一定是有比較可行的替代解決方案.希望各位高手不吝賜教.
      

  2.   

    好的,我告诉你一个吧,呵呵。如果为了绕过问题不打包,就是有点脑袋被驴子踢的感觉。
    在war包中有一个xml的配置文件query-ui-config.xml,我是这样来取到它的。代码不能编译,但相信你可以看明白
        private static final String QUERY_UI_CONFIG = "/schema/query-ui-config.xml";
                URL uiConfUrl = sce.getServletContext().getResource(QUERY_UI_CONFIG);
                InputSource xmlInp = new InputSource(url.openStream());            DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
                DocumentBuilder parser = docBuilderFactory.newDocumentBuilder();
                doc = parser.parse(xmlInp);
                Element root = doc.getDocumentElement();
                root.normalize();
      

  3.   

    基本的思路是不要用getRealPath,而是通过url来取到资源,url的资源可不关心是在目录中还是在war包中,是不是?呵呵。
    只要取到ServletContext就可以用getResource取到资源了,而用request就可以取到ServletContext,如果还要问,我就,呵呵