KakaopayAdapterErrorMsgHandler: 제어문자 정규화 후 파싱

상대 응답에 이스케이프되지 않은 제어문자가 섞여 오면
"Illegal unquoted character ((CTRL-CHAR, code 10))" 로 실패한다.
readTree() 전에 JacksonUtil.escapeControlChars() 로 표준 JSON 으로 맞춘다.

검증: gradlew compileJava BUILD SUCCESSFUL
This commit is contained in:
curry772
2026-08-28 14:28:12 +09:00
parent c5bf45cad9
commit 50c08d7813
@@ -45,7 +45,8 @@ public class KakaopayAdapterErrorMsgHandler extends TemplateCodeConvertAdapterEr
return responseMsessage;
}
JsonNode rootNode = OBJECT_MAPPER.readTree(jsonStr);
// 제어문자를 이스케이프하지 않고 보내는 상대 시스템 대응 (JacksonUtil.escapeControlChars 주석 참조)
JsonNode rootNode = OBJECT_MAPPER.readTree(JacksonUtil.escapeControlChars(jsonStr));
boolean modified = false;
@@ -74,7 +75,7 @@ public class KakaopayAdapterErrorMsgHandler extends TemplateCodeConvertAdapterEr
if (responseBody instanceof String) {
String jsonStr = (String) responseBody;
if (!StringUtils.isBlank(jsonStr)) {
JsonNode rootNode = OBJECT_MAPPER.readTree(jsonStr);
JsonNode rootNode = OBJECT_MAPPER.readTree(JacksonUtil.escapeControlChars(jsonStr));
StringBuffer sb = new StringBuffer();
JsonNode errorCode = rootNode.get("error_code");
if(errorCode != null)