използвам https://github.com/DanielaSfregola/twitter4s и трябва да прочета и да анализирам класа на потребителя, предоставен от twitter4s в Json.
Така че се опитах да създам следния serializer:
object User {
implicit val twitterUser: OFormat[User] = Json.format[User]
}
но това връщане No unapply or unapplySeq function found
Как мога да създам правилен serializer за този външен клас?
Отговори:
2 за отговор № 1Вашият проблем е, че User
има много полета (а именно повече от 22). В скала 2.10 имаше ограничение за броя полета за класа на делата. Това изчезна в 2.11, но не и в Json.format
макро на Play!, тъй като те продължават да поддържат за 2.10.
Можете обаче да използвате Джон Екстра, които имат различно изпълнение за макроси и ви позволяват да отидете на повече от 22 полета.
Ако не ви харесва това (макроса има някои ограничения, като например да не извеждате OFormat
), можете също да разделите User
клас в два (или повече) класа с по-малко от 22 полета и изграждане на първоначалния от тези, с по-опростено (и по-безопасно) изпълнение за Format
че това, което трябва да направите, ако сте направили всичко на ръка.
Можете също да четете този въпрос, за допълнителни обяснения.