오류 내용

Could not write JSON: Null key for a Map not allowed in JSON (use a converting NullKeySerializer?)

 

해결 방안

말 그대로 JSON 으로 변환할 때 Map 객체는 허용하지 않는 의미이다.

아래처럼 Map 인터페이스를 그대로 사용하면서 JSON 으로 직렬화할 때 위와 같은 오류가 생길 수 있다.

@Builder
@Getter
@NoArgsConstructor @AllArgsConstructor
public class PostKafkaProxyResponse {
    private String topic;
    private int partition;
    private long offset;
    private long timestamp;
    private Map<String, byte[]> headers; // 이 부분
}

이 경우에는 아래처럼 Map 인터페이스를 구현한 HashMap 같은 클래스로 사용하면 해결된다.

@Builder
@Getter
@NoArgsConstructor @AllArgsConstructor
public class PostKafkaProxyResponse {
    private String topic;
    private int partition;
    private long offset;
    private long timestamp;
    private HashMap<String, byte[]> headers;
}