使用(tomcat+;AXIS2)的Java web服务,应用程序的根在哪里?

使用(tomcat+;AXIS2)的Java web服务,应用程序的根在哪里?,java,web-services,web-applications,path,axis2,Java,Web Services,Web Applications,Path,Axis2,我创建了一个将图像下载到本地web服务器的函数。 当我像Java应用程序一样运行这个函数时,它工作得很好。但是,当我尝试使用AXIS2()创建的Web服务运行此方法时,AXIS2返回内部服务器错误 这种情况很可能发生,因为我在代码中使用了“根路径”。那么,我需要做什么来解决这个问题呢?我的服务的根在哪里?如何设置此路径 public void downloadPhoto() throws IOException{ URL url = new URL("http://vamosl

我创建了一个将图像下载到本地web服务器的函数。 当我像Java应用程序一样运行这个函数时,它工作得很好。但是,当我尝试使用AXIS2()创建的Web服务运行此方法时,AXIS2返回内部服务器错误

这种情况很可能发生,因为我在代码中使用了“根路径”。那么,我需要做什么来解决这个问题呢?我的服务的根在哪里?如何设置此路径

    public void downloadPhoto() throws IOException{

    URL url = new URL("http://vamosla.mobi/img/bonde.png");
    String target = "vamosla.jpg";  

    HttpURLConnection c = (HttpURLConnection)url.openConnection();
    c.setRequestMethod("GET");
    c.setDoOutput(true);
    c.connect();

    FileOutputStream f = new FileOutputStream(new File(target));

     InputStream in = c.getInputStream();
        byte[] buffer = new byte[1024];
        int len1 = 0;
        while ( (len1 = in.read(buffer)) > 0 ) {
            f.write(buffer,0, len1);
        }

        f.close();
}

嗯,当然有一些技巧可以用来计算代码当前在哪里执行,并从那里设置相对路径,但我认为这对您来说并不可靠

因此,我建议您通过系统属性或从类路径加载的配置文件来配置类似“asset.path”的内容