【问题标题】:Java, Google App Engine, and JSONArray/JSONObjectJava、Google App Engine 和 JSONArray/JSONObject
【发布时间】:2016-05-11 05:14:33
【问题描述】:

我正在处理一项作业,但我似乎无法从我的导师或助教那里得到回复。该任务的目标是使用 Google App Engine 部署一个应用程序,该应用程序获取图像的 URL,将其转换为字节流,将其存储在 DataStore 中,然后将其回调以在另一个页面上查看。

我已经能够存储图像,但检索它是另一回事。我们应该使用 JSON 数组和对象将带有相关数据的字符串传递给调用函数,但 Eclipse 告诉我 GAE 不支持 JSON。这是错误消息:

Google App Engine 的 Java 运行时环境不支持 org.json.simple.JSONArray

此外,Eclipse 控制台告诉我们

JSONArray 无法解析为类型

JSONObject 无法解析为类型

真正奇怪的是,讲师本人在他的演示应用程序中使用了 JSON。我希望我能从他那里得到关于这个问题的回应,但他很狡猾,整个学期都有些缺席。

无论如何,这就是我所拥有的。如果我做错了什么,请告诉我。 郑重声明,我并没有要求任何人为我修复我的代码或给我工作代码 - 我只是想帮助我理解我的问题。

<%@ page import="java.util.*" %>
<%@ page import="javax.jdo.*" %>
<%@ page import="org.json.simple.*" %>

<%
    PersistenceManager pm = PMF.getPMF().getPersistenceManager();
    try {
        List<University> items = University.loadAll(pm);
        JSONArray array = new JSONArray();
        for (University item : items) {
            JSONObject object = new JSONObject();
            object.put("uname", item.getNameOfUniversity());
            object.put("photoURL", item.getURLOfImage());
            array.add(object);
        }
        out.write(array.toString());
    } finally {
        pm.close();
    }
%>

【问题讨论】:

  • 您是否在 Eclipse 项目的构建路径中添加了 json.jar
  • 也尝试使用 org.json 库而不是 org.json.simple,因为它更加灵活并且可以 100% 使用 GAE .
  • @AnkurJain 是的,JSON 库在我的构建路径中。

标签: java json google-app-engine google-cloud-datastore


【解决方案1】:

你需要add the missing jar file to your project

此外,为了更轻松地创建 JSON 解析,您应该查看 JSON 映射器库:GSONJackson

【讨论】:

  • 我有罐子,所以它没有丢失。我认为的问题是它与 GAE 不兼容。真正奇怪的是,我班上的其他人都在使用同一个库,而且对他们来说效果很好……
猜你喜欢
  • 2015-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-02
  • 1970-01-01
  • 1970-01-01
  • 2013-07-06
相关资源
最近更新 更多