#wso2 #wso2esb #drupal-8 #wso2ei
#wso2 #drupal-8 #wso2-предприятие-интегратор #wso2-esb
Вопрос:
6.0 для вызова конечной точки веб-службы Drupal 8 RESTful, которая возвращает ответ в формате hal_json. Я никогда раньше не сталкивался с этим форматом, но это то, в чем содержится ответ Drupal 8. Тип содержимого — «application / hal json». Для получения дополнительной информации, это ссылка на Drupal 8 — https://www.drupal.org/docs/8/core/modules/rest/3-post-for-creating-content-entities
Я использую посредник свойств для преобразования ответа из формата hal_json в XML, но я получаю следующую ошибку:
Исключение OMException в getSOAPBuilder org.apache.axiom.om.Исключение OMException: com.ctc.wstx.exc.WstxUnexpectedCharException: неожиданный символ ‘{‘ (код 123) в prolog; ожидаемый ‘<‘
Я искал эту ошибку в Интернете и обнаружил, что этот тип ошибки обычно возникает, когда ответ API находится в формате, который не включен в WSO2 (он должен быть включен в axis2.xml файл). Может кто-нибудь, пожалуйста, скажите мне, какое свойство мне нужно добавить в мой axis2.xml файл? Я думаю, что это должно быть свойство форматирования сообщений и builder.
Ответ №1:
Я не работал с указанным типом сообщения JSON. Но если это допустимое сообщение JSON, вы можете определить конструктор JsonStreamBuilder для этого типа сообщения. Конструктор сообщений может быть определен следующим образом в axis2.xml файл в разделе messageBuilders в каталоге [EI_HOME]/conf/axis2
<messageBuilders>
..
<messageBuilder contentType="application/hal json"
class="org.wso2.carbon.integrator.core.json.JsonStreamBuilder"/>
..
</messageBuilders>
После изменения axis2.xml вам необходимо выполнить перезагрузку сервера, чтобы это вступило в силу.