Похоже, что Apache Johnzon не экранирует ключи объекта:
https://github.com/apache/johnzon/blob/master/johnzon-core/src/main/java/org/apache/johnzon/core/JsonObjectImpl.java#L150
Так, например, этот код:
Json.createObjectBuilder() .add(("This is \\s key"), "Value") .build()
создает недопустимый JSON:
{"This is \s key":"Value"}
Строковые значения экранированы правильно:
https://github.com/apache/johnzon/blob/master/johnzon-core/src/main/java/org/apache/johnzon/core/JsonStringImpl.java#L57
, поэтому я ожидаю, что экранированные ключи также экранируются.
Ячто-то отсутствует или я должен сообщить о проблеме?