Play Framework 2.1.3에서 Ajax POST 요청을 처리하려고합니다. 포스트 데이터는 JSON 객체이며, 같은 트리 구조가 : 나는 둥지 '어린이'임의 깊은 싶습니다Scala Play Framework에서 JSON 트리 구조 읽기
{ id: "a", name: "myname", kids : [{ id: "a1", name : "kid1", kids: []}, {id: "a2", name: "kid2", kids: [{id: "aa1", name :"grandkid", kids: []}]}]
합니다. 내가 생각하고있는 것이다 클래스는 (내가 실현 recursiveness이 문제가 될 수 있습니다) 이렇게 있습니다 :
case class Person {
id: String,
name: String,
kids: Array[Person]
}
내가 생각하고있는 것 형식 :
implicit val personFormat:Format[Person] = Json.format[Person]
재생 내 형식에 오류를 던지고 그 나는 썼다 :
유형 불일치; found : controllers.Resources.Person required : Array [controllers.Resources.Person]
Play에 Tree 구조가 있다는 것을 알고 있습니다. JSON 읽는 방법에 관한 예제/문서를 찾을 수 없습니다.
어떤 도움
매우 감사
고마워요 로빈, 난 당신의 답변을 통합하려고하고 '찾을 수 없습니다 : 가치 적용'컴파일 오류가 발생합니다. 기본 무언가를 놓치고 있습니까? 그리고 Person 클래스의 'kids'는 대답을 위해 'Seq [Person]'이어야합니까? 감사! – Joost
오, 당신이 동반자 개체에서 선언하지 않는다고 생각합니다. 그러므로'apply'를'Person'으로 변경하십시오. 당신은'Array'로 변경할 수 있지만, 만약 Play가 자동으로'Array's를 읽을 수 있을지 확신하지 못합니다; 그래서'Person'에서 사용 된 콜렉션 타입을'Array'에서'Seq'로 바꾸라고 제안한 것입니다. 미안하지만 분명하지 않다. –