我有一个静态JSON文件,我想在我的GWT代码中访问它。 custom-report.json 文件位于项目的 client 包中。我在ClientBundle中添加它并尝试访问它但我收到错误
public interface AppBundle extends ClientBundle {
@Source("custom-report.json")
public TextResource jsonData();
public static final AppBundle INSTANCE = GWT.create(AppBundle.class);
}
要在我的代码中使用它,这就是我正在做的事情:
AppBundle.INSTANCE.mystyle().ensureInjected();
JSONObject obj = (JSONObject) parser.parse(new FileReader(AppBundle.INSTANCE.jsonData().getText()));
这给了我编译错误
[ERROR] Line 29: No source code is available for type org.json.simple.parser.JSONParser; did you forget to inherit a required module?
我不确定这是否是在GWT中使用JSON文件的正确方法。
答案 0 :(得分:0)
您需要使用com.google.gwt.json.client.JSONParser
而不是GWT
提供的org.json.simple.parser.JSONParser
。
JSONValue value = JSONParser.parse(json);
JSONObject productsObj = value.isObject();
JSONArray productsArray = productsObj.get("products").isArray();