Java 从JDeveloper-OracleMAF项目中的项目读取json文件

Java 从JDeveloper-OracleMAF项目中的项目读取json文件,java,json,file,jdeveloper,oracle-maf,Java,Json,File,Jdeveloper,Oracle Maf,我试图将json文件读入用JDeveloper 12c编写的Oracle MAF项目中。在这种项目中,我们有两个主要文件夹:ApplicationController和ViewController。我的java类在ApplicationController文件夹中,我的资源也在public_html文件夹中。我尝试了我在网上找到的所有东西,但似乎什么都不适合我 因此java类的根是这样的:\myProject\ApplicationController\adfmsrc\application\M

我试图将json文件读入用JDeveloper 12c编写的Oracle MAF项目中。在这种项目中,我们有两个主要文件夹:ApplicationController和ViewController。我的java类在ApplicationController文件夹中,我的资源也在public_html文件夹中。我尝试了我在网上找到的所有东西,但似乎什么都不适合我

因此java类的根是这样的:\myProject\ApplicationController\adfmsrc\application\MyJavaClass.java

json文件的根目录如下: \myProject\ApplicationController\public\u html\json\myJsonFile.json

在我的java类中,我添加了如下函数,以便从project中读取文件:

public static String loadJSONFromProject(String filename) {
    String json = "";
    try {
            InputStream is = Utils.class.getResourceAsStream(filename);
            int size = is.available();
            byte[] buffer = new byte[size];
            is.read(buffer);
            is.close();
            json = new String(buffer, "UTF-8");
    } catch (Exception ex) {
            ex.printStackTrace();
    }
    return json;
}
我尝试调用该方法的方式如下:

Utils.loadJSONFromProject("/json/myJsonFile.json");

Utils.loadJSONFromProject("json/myJsonFile.json");

Utils.loadJSONFromProject("../json/myJsonFile.json");
当我运行这个项目时,我得到一个

第行出现java.lang.NullPointerException错误:int size=is.available()

这意味着找不到该文件。Utils类是包含上述方法的java类

请帮我做这个


提前感谢。

我成功地使它像这样工作:

Utils.loadJSONFromProject("/json/myJsonFile.json");

Utils.loadJSONFromProject("json/myJsonFile.json");

Utils.loadJSONFromProject("../json/myJsonFile.json");
在文件夹\myProject\ApplicationController\adfmsrc中,我添加了一个名为“json”的新文件夹,并在其中添加了我的文件

我进入JDeveloper中的项目,右键单击它,然后选择“项目属性”。点击“编译器”。在标签为“将文件类型复制到输出目录”的字段上:“我添加了“.json”扩展名

之后,我调用了上面的函数,如下所示:Utils.loadJSONFromProject(“../json/myJsonFile.json”)它就像一个符咒

谢谢你,我希望我的回答也能对其他人有所帮助