#jsonserializer — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #jsonserializer, aggregated by home.social.
-
"__TypeId__": как один Kafka-заголовок незаметно связывает микросервисы именами Java-классов
Если два сервиса обмениваются JSON, но один из них не может десериализовать сообщение без знания полного имени Java-класса другого сервиса - значит, транспортный контракт зависит не только от данных, но и от реализации. Звучит как теория? Увы, но это суровая практика Spring Kafka, с которой многие разработчики имеют дело каждый день. Вы пишете сервис A, сериализуете объект в JSON, отправляете в kafka-топик. Консьюмер сервиса B, который понятия не имеет о существовании класса com.company.a.event.UserEvent , должен бы прочитать JSON по структуре полей - ведь это же просто данные, верно? Но нет. JsonDeserializer по умолчанию смотрит в заголовок TypeId , видит там полное имя класса отправителя и пытается выполнить Class.forName() . Класса нет - контейнер падает. Ваш независимый сервис внезапно стал зависимым от classpath источника запроса. Приглашаю разобраться, как возникла эта проблема и как из неё выбраться, не затаскивая общую DTO-библиотеку в каждый микросервис. Техническая оговорка: в это статье рассматривается конкретика про JsonSerializer / JsonDeserializer в Spring Kafka. На Avro/Protobuf со Schema Registry эта проблема не воспроизводится - там контракт вынесен в схему, и имя Java-класса просто не играет роли.
https://habr.com/ru/articles/1065138/
#Java #spring_framework #kafka #микросервисы #__TypeId__ #TYPE_MAPPINGS #JsonSerializer #JsonDeserializer
-
A small release is out for JDeck.
This release adds functions to decode F# Maps and BCL Dictionaries which were missing from the last bit (link to release in the next tweet)https://github.com/AngelMunoz/JDeck/releases/tag/v1.0.0-rc-002
#fsharp #dotnet #json #jsonserializer #library #buildinpublic
-
A small release is out for JDeck.
This release adds functions to decode F# Maps and BCL Dictionaries which were missing from the last bit (link to release in the next tweet)https://github.com/AngelMunoz/JDeck/releases/tag/v1.0.0-rc-002
#fsharp #dotnet #json #jsonserializer #library #buildinpublic
-
Hey #dotnet friends using System.Text.Json ✋
Has anyone managed to create code that uses source generators but for snake_case naming policy?
I notice I can not pass anywhere the serializer options when I specify using the source generator, and then I can not pass the snake_case naming policy?
Any help please, repost for reach?
#csharp #aspnet #aspdotnet #serialization #json #snake_case #jsonserializer #sourcegenerators #systemtextjson
-
Hey #dotnet friends using System.Text.Json ✋
Has anyone managed to create code that uses source generators but for snake_case naming policy?
I notice I can not pass anywhere the serializer options when I specify using the source generator, and then I can not pass the snake_case naming policy?
Any help please, repost for reach?
#csharp #aspnet #aspdotnet #serialization #json #snake_case #jsonserializer #sourcegenerators #systemtextjson