Jackson在处理字符串时存在长度限制,是否可以添加配置项,供业务控制其所能解析的字符传长度?
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Verfolge die Dekodierung der Antwort von ProduceJsonProcessor.doDecodeResponse über ProduceProcessor.decodeResponse bis zu DefaultHttpClientFilter.extractResponse, mit Fokus auf Jacksons Validierung der String-Länge durch StreamReadConstraints. Ermittle, wo eine maximale String-Länge auf Service-Ebene konfiguriert werden könnte, und überprüfe anschließend, dass ein konfiguriertes Limit beim Dekodieren einer übergroßen Antwort eingehalten wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
当前遇到一个问题,是服务端返回的响应消息中,字符串长度过长,导致jackson解析失败
Caused by: com.fasterxml.jackson.core.exc.StreamConstraintsException: String length (20051112) exceeds the maximum length (20000000)
at com.fasterxml...core.StreamReadConstraints.validateStringLength:324
at com.fasterxml...util.ReadConstrainedTextBuffer.validateStringLength:27
at com.fasterxml...util.TextBuffer.finishCurrentSegment:939
at com.fasterxml...json.UTF8StreamJsonParser._finishString2:2584
at com.fasterxml...json.UTF8StreamJsonParser._finishAndReturnString:2560
at com.fasterxml...json.UTF8StreamJsonParser.getText:335
at com.fasterxml...jsonorg.JSONObjectDeserializer.deserialize:51
at com.fasterxml...jsonorg.JSONObjectDeserializer.deserialize:48
at com.fasterxml...jsonorg.JSONObjectDeserializer.deserialize:14
at com.fasterxml...deser.DefaultDeserializationContext.readRootValue:323
at com.fasterxml...databind.ObjectMapper._readMapAndClose:4825mas
at com.fasterxml...databind.ObjectMapper.readValue:3825
at org.apache...produce.ProduceJsonProcessor.doDecodeResponse:64
at org.apache...produce.ProduceProcessor.decodeResponse:76
at org.apache...http.DefaultHttpClientFilter.extractResponse:105
at org.apache...http.DefaultHttpClientFilter.afterReceiveResponse:139
at org.apache...http.RestClientInvocation.lambda$processResponseBody$7:251
20000000是jackson提供的默认值;从chassis源码中来看,并没有提供配置该长度的配置项,是否可以加一个
- Vorherrschende Sprache
- Java
- Sterne
- 1.9k
- Forks
- 813
- Ø Merge
- 8 T. 23 Std.
- Gemergte PRs (30 T.)
- 1
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
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 apache/servicecomb-java-chassis
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
apache/servicecomb-java-chassis#5106 ·
-
question
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
apache/servicecomb-java-chassis#5153 · 1 Kommentar ·
-
[QUESTION] - 请发布3.x的最新版本 Offenquestion
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
apache/servicecomb-java-chassis#5146 ·
-
[FEATURE] - When will ServiceComb support Spring Boot 4.x, Spring Framework 7.x, and Jackson 3.x? Offenenhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
apache/servicecomb-java-chassis#5145 ·
-
2.x bug
apache/servicecomb-java-chassis#5141 · 1 zugewiesene Person ·
Alle Issues in apache/servicecomb-java-chassis
Ä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 ·