Open
Description
I'm getting an exception trying to write to string a map with nil as a key.
(jsonista.core/write-value-as-string {nil 1}) ;; => throws com.fasterxml.jackson.databind.JsonMappingException
1. Unhandled com.fasterxml.jackson.databind.JsonMappingException
Null key for a Map not allowed in JSON (use a converting NullKeySerializer?)
(through reference chain: clojure.lang.PersistentArrayMap["null"])
JsonMappingException.java: 281 com.fasterxml.jackson.databind.JsonMappingException/from
SerializerProvider.java: 1336 com.fasterxml.jackson.databind.SerializerProvider/mappingException
SerializerProvider.java: 1230 com.fasterxml.jackson.databind.SerializerProvider/reportMappingProblem
FailingSerializer.java: 32 com.fasterxml.jackson.databind.ser.impl.FailingSerializer/serialize
MapSerializer.java: 791 com.fasterxml.jackson.databind.ser.std.MapSerializer/serializeFields
MapSerializer.java: 764 com.fasterxml.jackson.databind.ser.std.MapSerializer/serializeWithoutTypeInfo
MapSerializer.java: 720 com.fasterxml.jackson.databind.ser.std.MapSerializer/serialize
MapSerializer.java: 35 com.fasterxml.jackson.databind.ser.std.MapSerializer/serialize
DefaultSerializerProvider.java: 480 com.fasterxml.jackson.databind.ser.DefaultSerializerProvider/_serialize
DefaultSerializerProvider.java: 319 com.fasterxml.jackson.databind.ser.DefaultSerializerProvider/serializeValue
ObjectMapper.java: 4487 com.fasterxml.jackson.databind.ObjectMapper/_writeValueAndClose
ObjectMapper.java: 3742 com.fasterxml.jackson.databind.ObjectMapper/writeValueAsString
core.clj: 238 jsonista.core/write-value-as-string
core.clj: 233 jsonista.core/write-value-as-string
REPL: 10 clojud.utils.kafka/eval82873
REPL: 10 clojud.utils.kafka/eval82873
Compiler.java: 7177 clojure.lang.Compiler/eval
Compiler.java: 7132 clojure.lang.Compiler/eval
core.clj: 3214 clojure.core/eval
core.clj: 3210 clojure.core/eval
interruptible_eval.clj: 87 nrepl.middleware.interruptible-eval/evaluate/fn/fn
AFn.java: 152 clojure.lang.AFn/applyToHelper
AFn.java: 144 clojure.lang.AFn/applyTo
core.clj: 665 clojure.core/apply
core.clj: 1973 clojure.core/with-bindings*
core.clj: 1973 clojure.core/with-bindings*
RestFn.java: 425 clojure.lang.RestFn/invoke
interruptible_eval.clj: 87 nrepl.middleware.interruptible-eval/evaluate/fn
main.clj: 437 clojure.main/repl/read-eval-print/fn
main.clj: 437 clojure.main/repl/read-eval-print
main.clj: 458 clojure.main/repl/fn
main.clj: 458 clojure.main/repl
main.clj: 368 clojure.main/repl
RestFn.java: 1523 clojure.lang.RestFn/invoke
interruptible_eval.clj: 84 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 56 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 152 nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn
AFn.java: 22 clojure.lang.AFn/run
session.clj: 202 nrepl.middleware.session/session-exec/main-loop/fn
session.clj: 201 nrepl.middleware.session/session-exec/main-loop
AFn.java: 22 clojure.lang.AFn/run
Thread.java: 829 java.lang.Thread/run
I tried to set :encode-key-fn option but with the same result. Looks like my function is not executed at all.
Metadata
Assignees
Labels
No labels