Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从部署在weblogic上的application.ear加载文件_Java_Maven_Weblogic - Fatal编程技术网

Java 从部署在weblogic上的application.ear加载文件

Java 从部署在weblogic上的application.ear加载文件,java,maven,weblogic,Java,Maven,Weblogic,我正在尝试编写代码,从application.ear加载*.html文件并显示它。我的申请结构如下: application -src -main -java -my.package.few.folders -Class.java -webapp -my.html 我是Java和weblogic的新手,所以我自己无法理解,在internet上找到的所有线程基本上都是相同的。文件应可通过以下方式访问: Class.class.getCl

我正在尝试编写代码,从application.ear加载*.html文件并显示它。我的申请结构如下:

application
-src
  -main
    -java
      -my.package.few.folders
        -Class.java
    -webapp
      -my.html
我是Java和weblogic的新手,所以我自己无法理解,在internet上找到的所有线程基本上都是相同的。文件应可通过以下方式访问:

Class.class.getClassLoader().getResource("main/webapp/my.html");
问题是我的应用程序部署在weblogic上,上面的代码为我提供了weblogic域的路径(不是我的应用程序ear,其中有*.html文件)。所以使用这段代码我总是得到空指针异常,因为.ear隐藏在weblogic域中的几个文件夹中。我希望避免在weblogic中为.ear指定路径,因为它需要在不同的服务器上工作,并且只更改托管服务器名称,它就会崩溃。我怎样才能直接进入我的.ear,而不是通过weblogic域?

当您加载一个资源(您的html文件)时,您是从类路径加载它,而不是从文件系统加载它。然后,您的代码应该如下所示:Class.Class.getClassLoader().getResource(“my.package.now.folders.my.html”);但是“my.html”和“Class.java”在不同的文件夹中,所以当我输入“my.package.now.folders”时,如何才能进入“webapp”文件夹?当我尝试这样做时:
System.out.println(Class.Class.getClassLoader().getResource(“my.package.now.folders”)输出为“null”。加载资源(html文件)时,从类路径加载,而不是从文件系统加载。然后,您的代码应该如下所示:Class.Class.getClassLoader().getResource(“my.package.now.folders.my.html”);但是“my.html”和“Class.java”在不同的文件夹中,所以当我输入“my.package.now.folders”时,如何才能进入“webapp”文件夹?当我尝试这样做时:
System.out.println(Class.Class.getClassLoader().getResource(“my.package.now.folders”)输出为“空”。