2015-01-15 2 views
2

У меня проблемы с WSO2AM-1.7. Когда я пытаюсь получить ресурс, такой как:JSON Полезные нагрузки с пробелами в именах атрибутов

{ 
     "hello there" : "world" 
} 

Стадию посредничество не работает, из-за пространства в «привет». Я знаю, что типы элементов XML не могут содержать пробелы в их именах, и ошибка, которую я получаю, предполагает, что именно это пытается сделать программа. Это должно означать, что данные неявно изменены на XML, хотя все мои данные должны оставаться в JSON.

Я использую MessageBuilder и форматтер:

<messageFormatter contentType="application/json" 
          class="org.apache.synapse.commons.json.JsonStreamFormatter"/> 

<messageBuilder contentType="application/json" 
         class="org.apache.synapse.commons.json.JsonStreamBuilder"/> 

Есть еще один строитель сообщения или форматировщик я должен использовать вместо этого?

ответ

1

Вы можете найти информацию о сборщиках сообщений и форматировщиках here.

org.apache.synapse.commons.json.JsonStreamBuilder 
org.apache.synapse.commons.json.JsonStreamFormatter 

будет поддерживать целостность представления JSON без преобразования его в XML.

Я прошел через тот же сценарий в APIM 1.8, где у моего json есть атрибут пространства. Но он отлично работал без ошибок (не удалось проверить с помощью APIM 1.7).

Смежные вопросы