我的一个servlet在其初期化时调用一个java类
在这个java类里边需要用URL dU= new URL(aurl); InputStream in = dU.openStream()
读取我站点的一个jsp文件。我写的是相对路径 /xxx/aaa.jsp
结果读取该url失败,改成http://localhost:8888/xxx/aaa.jsp才行请问,我想使用相对路径怎么弄?(前提:要使用new URL(aurl)的java类里边没有request等对象,即servlet没有传递相关请求对象给该java类)
在这个java类里边需要用URL dU= new URL(aurl); InputStream in = dU.openStream()
读取我站点的一个jsp文件。我写的是相对路径 /xxx/aaa.jsp
结果读取该url失败,改成http://localhost:8888/xxx/aaa.jsp才行请问,我想使用相对路径怎么弄?(前提:要使用new URL(aurl)的java类里边没有request等对象,即servlet没有传递相关请求对象给该java类)
String real_path = this.getServletContext().getRealPath("");
Test test = new Test(real_path);
Test.java
private String real_path = "";public Test(String path)
{
this.real_path = path;
}
public conUrl()
{
String url = this.real_path + "/xxx/aaa.jsp";
URL dU= new URL(url);
InputStream in = dU.openStream()
}
既然是servlet的init方法调用,则servlet肯定知道啊,作为参数传过去呢。
这样且不是变成D:\workspace\webapps\myapp/xxx/aaa.jsp这样怎么能得到执行结果呢
<servlet>
<servlet-name>...</servlet-name>
<servlet-class>...</servlet-class>
<init-param>
<param-name>Url</param-name>
<param-value>http://www.domin.com</param-value>
</init-param>
</servlet>servlet init();String domain_name = this.getServletConfig().getInitParameter("Url");
Test test = new Test(domain_name);Test.java private String domain_name = "";
public Test(String domain)
{
this.domain_name = domain;
}
public conUrl()
{
String url = this.domain_name + "/xxx/aaa.jsp";
URL dU= new URL(url);
InputStream in = dU.openStream()
}