Spring CloudEventMessageConverter content-type header name
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 45/100
Rechercherichtung
Lokalisieren Sie den Code von Spring CloudEventMessageConverter in sdk-spring und prüfen Sie, wie er content-type-Header liest. Überprüfen Sie die im Issue beschriebene Interaktion zwischen Serializer und Deserializer und behalten Sie die bestehenden Fallbacks bei, während Sie die Header-Namenskonvention der CloudEvents-Spezifikation unterstützen; als abgeschlossen gilt die Aufgabe, wenn strukturierte Nachrichten aus sdk-kafka über sdk-spring deserialisiert werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Spring CloudEventMessageConverter content-type header name uses the Spring Messaging contentType header name which differs fom the cloud events spec content-type which is used by Kafka serializer for instance.
This leads to a message from a project using structured mode and kafka serializer (sdk-kafka) to not be deserialized by another project using (sdk-spring).
The current code is as follows on sdk-spring:
if (message.containsKey(MessageHeaders.CONTENT_TYPE)) {
return String.valueOf(message.get(MessageHeaders.CONTENT_TYPE));
}
if (message.containsKey(CloudEventsHeaders.CONTENT_TYPE)) {
return String.valueOf(message.get(CloudEventsHeaders.CONTENT_TYPE));
}
Unfortunately the CloudEventsHeaders.CONTENT_TYPE is CE_PREFIX + "datacontenttype" which is not exactly the same property we are looking here.
I would be happy to create a merge request where a another fallback is introduced to have the spec header name (content-type) which would enable the sdk-spring to deserialize messages.
This would add the support while still keeping it compatible with different versions and services.
Ideally, also the spring-sdk serializer should be checked and changed, but i would rather have this small mr fixed and dive on the serializer in a different issue.
- Vorherrschende Sprache
- Java
- Sterne
- 446
- Forks
- 172
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus cloudevents/sdk-java
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
cloudevents/sdk-java#731 · 1 Reaktion ·
-
bug
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
cloudevents/sdk-java#697 · 3 Kommentare ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
cloudevents/sdk-java#689 · 2 Kommentare ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
cloudevents/sdk-java#660 · 2 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
cloudevents/sdk-java#748 ·
Alle Issues in cloudevents/sdk-java
Ähnliche Issues
-
documentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
inu-appcenter/memorIN-backend#288 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
-
frontend maui-pilot pilot-ask question
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
executions.Query — startDate and timeRange filters are sent with inverted comparison operators Offenarea/plugin
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
kestra-io/plugin-kestra#190 ·