2016-04-28 8 views
0

私には簡単に行くためにスカラに新しく!スプレーフォームのデータをケースクラス

私はスプレーatmと投稿要求を使用しています。投稿データをケースクラスに変換しようとしていますが、エラーcould not find implicit value for parameter um: spray.httpx.unmarshalling.FromRequestUnmarshallerがスローされます。私は何を正しくしていないでしょうか?ドキュメントはちょっと混乱しています。

post { 
    entity(as[TextMessage]) { txt => 
     println(txt.body) 
     complete("") 
    } 
} 

そして、私のケースクラスcase class TextMessage(body: String, from: String)

ドキュメントから、これはバットをオフに動作するはずです。

アイデア?

編集:データは、フォームデータは、application/x-www-form-urlencoded

答えて

0

がTextMessageのタイプのためのJsonFormatがスコープ内にあることを確認します。すなわちそのスプレーようCANDどのようにマーシャルに見つけるとして掲載されますJSONとして掲載されていないことタイプ。

このlink

+0

応答がJSONに私に掲載されていない、それは、フォームデータの 'アプリケーション/ X-WWW-フォームurlencoded'です – user3750194

0

を確認してください私はそう簡単な方法が存在する場合、私は知らないが、私はformFieldsディレクティブを使用するスプレーでフォームデータを解析されていません。ここで

val textMessageEntity = formFields('body, 'from).as(TextMessage) 

post { 
    textMessageEntity { txt => 
     println(txt.body) 
     complete("") 
    } 
} 

についてformFieldsディレクティブの詳細さ:http://spray.io/documentation/1.2.2/spray-routing/form-field-directives/formFields/

関連する問題