Play2 findet meine impliziten Lesevorgänge oder das Format für JSON nicht

7

Dies ist mein Suchobjekt:

%Vor%

Ich versuche diese Klasse zu verwenden, wenn ich einen Webservice mit WS anrufe:

%Vor%

Aber der Scala-Compiler beschwert sich über diese Zeile:

  

Kein Json-Deserializer für Typ models.helper.Search gefunden. Versuchen zu   implementiert ein implizites Lesen oder Formatieren für diesen Typ.

Könnte mir jemand sagen, was ich falsch mache?

  • hat das Beispiel aus Ссылка
  • Dieser Thread behandelt das gleiche Problem, gibt aber keine Lösung, welches Beispiel auf welcher Site? Ссылка
Somatik 07.05.2012, 20:51
quelle

1 Antwort

21

Tatsächlich ist das Beispiel falsch. Sie müssen Ihren impliziten Format[Search] -Wert im impliziten Bereich verfügbar haben.

In Ihrem Fall ist Format[Search] als verschachtelter Wert der Klasse Search definiert, Sie können also nur von einer Instanz von Search erreichen.

Was Sie also tun möchten, ist, es an einer anderen Stelle zu definieren, an der es referenziert werden könnte, ohne eine Instanz von Search erstellen zu müssen, z. in einem Formats -Objekt:

%Vor%

Dann können Sie es wie folgt verwenden:

%Vor%

Sie können die Importsteuer auch entfernen, indem Sie den Format[Search] Wert im Begleitobjekt der Klasse Search definieren. Tatsächlich sucht der Scala-Compiler automatisch Companion-Objekte von Typparametern, wenn er einen impliziten Wert eines bestimmten Typs benötigt:

%Vor%

Dann können Sie es verwenden, ohne es zu importieren:

%Vor%     
Julien Richard-Foy 07.05.2012, 21:14
quelle