【问题标题】:Sending and receiving JSON object through DWR通过 DWR 发送和接收 JSON 对象
【发布时间】:2011-11-14 10:05:21
【问题描述】:

我在我的项目中使用 DWR 进行 AJAX 调用。 DWR 通过读取 java 类将 javascript 对象转换为 java 对象。我想通过 DWR 发送和接收类似 JSON 的结构。

例如:

JS 对象:

{
  "name" : "TamilVendhan",
  "age" : "24",
  "hobbies" : [
    "gaming",
    "gaming",
    "gaming"
  ],
  "address" : {
    "doorNo" : "122",
    "city" : "Banglore",
    "state" : "Karnataka",
    "country" : "india"
  }
}

上面的js对象可以转换成Java如下:

Map<String, Object> map = new HashMap<String, Object>();
map.put("name", "TamilVendhan");
map.put("age", "24");
List<String> list = new ArrayList<String>();
list.add("gaming");
list.add("gaming");
list.add("gaming");
map.put("hobbies", list);
Map<String, Object> addr = new HashMap<String, Object>();
addr.put("doorNo",122);
addr.put("city", "banglore");
addr.put("state", "Karnataka");
addr.put("country", "India");
map.put("address", addr);

这对 DWR 是否可行。如果可以的话,给我一些指点!

谢谢!


更新:

在 DWR 中可以将 JS 对象转换为 Map&lt;String, Object&gt;。但它只有一个(1st)级别。如果您有任何嵌套对象/数组,它将不会被转换并以conversion error 结尾。

看到这个ticket.

【问题讨论】:

  • @nfechner:谢谢你的编辑,伙计。我会从下一个问题开始纠正这个问题。

标签: java javascript json dwr


【解决方案1】:

最新版本的 DWR 支持 json,你需要在你的 web.xml 中通过为 DWR Servlet 传递 init-param 来启用,更多信息可以找到at,对于 DWR 也有一本不错的书名为 ' DWR Java AJAX 应用程序。

【讨论】:

  • 我之前调查过。它只有一种方式(Java --> JS)。它不能反过来做,至少现在是这样。也许在 dwr 4.0 中看到我的问题更新。
猜你喜欢
  • 2018-05-03
  • 1970-01-01
  • 1970-01-01
  • 2015-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多