0

キーが「products」で値が List[Product] のリストから JSON オブジェクトを構築しようとしていますが、Product はケース クラスです。しかし、「type mismatch; found : (String, List[com] .mycompnay.ws.client.Product]) 必須: net.liftweb.json.JObject (展開すると) net.liftweb.json.JsonAST.JObject".

私がこれまでに行ったことは次のとおりです。

val resultJson:JObject = "products" -> resultList
      println(compact(render(resultJson)))
4

1 に答える 1

1

decompose( doc )を探しています。この回答を参照してください。

次のコードをテストしたところ、問題なく動作しました。

import net.liftweb.json._
import net.liftweb.json.JsonDSL._
import net.liftweb.json.Extraction._

implicit val formats = net.liftweb.json.DefaultFormats

case class Product(foo: String)

val resultList: List[Product] = List(Product("bar"), Product("baz"))
val resultJson: JObject = ("products" -> decompose(resultList))
println(compact(render(resultJson)))

結果:

{"products":[{"foo":"bar"},{"foo":"baz"}]}
于 2016-11-21T11:53:22.227 に答える