Scala中的Gson TypeToken

时间:2017-06-19 11:35:11

标签: json scala gson

我试图将包含对象数组的JSON字符串解析为Scala集。 JSON字符串:

[
   {
      "name":"Orchestrator",
      "parent":"",
      "edit":false
   },
   {
      "name":"DBIntegrator",
      "parent":"Orchestrator",
      "edit":false
   }
]

将JSON字符串转换为Scala集的代码:

val token: Type = new TypeToken[scala.collection.mutable.HashSet[ActorDefinition]](){}.getType
val newActorDefinitionList: scala.collection.mutable.HashSet[ActorDefinition] = new Gson().fromJson(json, token)

进口

import com.google.gson.Gson
import com.google.gson.reflect.TypeToken

ActorDefinition类:

class ActorDefinition(name: String, node: String, parent: String) {
    val actorName = name
    val parentActor = parent
    var canBeEdited: Boolean = false
}

当我执行程序时,我得到如下异常:

exception:java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $

我是Scala和Gson的新手,非常感谢任何帮助。谢谢

0 个答案:

没有答案