------------如何在java类中取得web容器在系统中的绝对路径或相对路径--------

比如一个普通的java类,不继承任何servlet类,也拿不到request,怎么取得web服务器(weblogic)的路径。因为我要在那个java类中写一个xml文件,让外部访问。
取得的都是工程底下的路径,我想取得部署之后的应用的路径。
- -!----***---^-^-----
这个类是拿不到request的
- -!----***---^-^-----
试过了很多方法得到的都是eclipse的workspace下的路径:
得到的是这样的路径:D:\Program Files\MyEclipse 6.5\workspace\AAAAA\WebRoot\WEB-INF\classes\
而我想得到的是E:\Tomcat\webapps\AAAAA\WEB-INF\classes\这样的路径
也就是,我想得到web服务器的路径(实际的服务器是weblogic);
其中AAAAA是项目的名称。

我记得当初我用了个new File在网络上传输文件,结果失败了,文件地址全是new 在 服务器上的地址,你可以试试用new File,然后得到他的toURI,然后再toURL,不知道你的问题合适不,你可以试试
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-06-01
可以class.GetResource ()函数获取类所在的目录,然后再向上就是WEB-INF了。
但我觉得你这个要求没啥意思啊。。
第2个回答  2009-06-01
request.getSession().getServletContext().getRealPath("/");

正解
第3个回答  2009-06-01
如果你能得到eclipse的workspace下的路径,就说明你成功了,因为你是在eclipse下运行的所以是这个路径,当你在服务器(tomcat)运行的时候就是tomcat下的路径了
第4个回答  2009-05-31
楼上的方法过期了.
用这个替代
request.getSession().getServletContext().getRealPath("/");
第5个回答  2009-05-31
request.getRealPath();

如何在java web项目中获得相对路径
第一步: 先获得classpath路径 String classpath = this.getClass().getResource("\/").getPath().replaceFirst("\/", "");这样子可以得到classpath路径,类似于:F:\/projects\/JavaStudyParent\/study-springmvc-junit-test\/target\/springmvc-junit-test\/WEB-INF\/classes\/ 然后把WEB-INF\/classes截取就...

java项目中文件的路径
五、Java中的getResourceAsStream有以下几种: 1. Class.getResourceAsStream(String path) : path 不以’\/'开头时默认是从此类所在的包下取资源,以’\/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,最终还是由 ClassLoader(类加载器)(获取资源)2. Class.getClassLoader.getResou...

java里绝对路径和相对路径的区别
绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:\\xyz\\test.txt 代表了test.txt文件的绝对路径。http:\/\/www.sun.com\/index.htm也代表了一个URL绝对路径。 相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,"\/"代表Web应用的...

Java普通类(不是Servlet)中如何获取Web工程部署到tomcat的路径?
第一步:需要先创建一个server,可以通过windows中的show view,之后找到server,第二步:在server窗口中右击,选择”new-server“,之后创建好tomcat server。第三步:双击创建的server,进入server设置界面,设置Server Location,选择编译路径是”Use Tomcat“即可切换到Tomcat的路径,保存。第四步:在创建...

java 绝对路径 转换成相对路径
服务器中的Java类获得当前路径 Weblogic WebApplication的系统文件根目录是你的weblogic安装所在根目录。例如:如果你的weblogic安装在c:\\bea\\weblogic700…… 那么,你的文件根路径就是c:\\. 所以,有两种方式能够让你访问你的服务器端的文件:a.使用绝对路径: 比如将你的参数文件放在c:\\yourconfig\\your...

j2ee的核心技术
在JNDI中,在目录结构中的每一个结点称为CONTEXT。每一个JNDI名字都是相对于CONTEXT的。这里没有绝对名字的概念存在。对一个应用来说,它可以通过使用 INITIALCONTEXT 类来得到其第一个CONTEXT:CONTEXT CTX = NEW INITIALCONTEXT();应用可以通过这个初始化的CONTEXT经有这个目录树来定位它所需要的资源或对象。例如,假设...

如何在jsp中使用绝对路径
在JavaWeb开发中,常使用绝对路径的方式来引入JavaScript和CSS文件,这样可以避免因为目录变动导致引入文件找不到的情况,常用的做法如下:一、使用${pageContext.request.contextPath} 代码” ${pageContext.request.contextPath}”的作用是取出部署的应用程序名,这样不管如何部署,所用路径都是正确的。例如:...

如何在log4j.properties文件中使用相对路径
log4j是一个应用非常广泛的Java日志组件。我们可以方便的借助它将日志信息输出到控制台、文件、数据库等甚至可以通过扩展以流的方式输出到任何存储媒介中。本文要解决的问题:如何在log4j.properties文件中使用相对路径?缺省情况下我们只能在log4j.properties中配置绝对路径。这样以来,我们在系统部署、开放环境...

eclipse里jsp中图片写相对路径无法显示
用绝对路径可以显示,但是考虑到把网站发给别人,别人看不到所以想用相对路径。图片的绝对路径是这样的:G:\\java\\PMtest\\WebContent\\resources\\xbdljm.png 在eclipse左边直接右键包中图片的属性查到相对路径是:\/PMtest\/WebContent\/resources\/xmglz.png 但... 展开 冰箱...

在java中怎么访问web-inf 目录下的jsp页面。
同时使用struts来进行jsp文件提取,并将编译好的结果发送到客户端。WEB-INF是Java的WEB应用的安全目录。所谓安全就是客户端无法访问,只有服务端可以访问的目录。如果想在页面中直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问。

相似回答