WSO2 API Manager Добавить hal + json - PullRequest
1 голос
/ 29 января 2020

Я недавно добавил messageFormatter и messageBuilder аналогично:

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

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

В этих двух файлах:

  • [API -HOME] /repository/conf/axis/axis2.xml
  • [API-HOME] /repository/conf/axis/axis2_blocking_client.xml

в API Manager версии 3.0.0.

Но в APIM версии 3.0.0 все изменения в этих файлах отменяются, потому что любая конфигурация сервера: [API-HOME] / repository /conf/deployment.toml, ссылка: https://github.com/wso2/docs-apim/issues/498

Как правильно добавить эти строки?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 30 января 2020

Попробуйте это.

1) Откройте repository/resources/conf/templates/repository/conf/axis2/axis2.xml.j2.

i) Добавьте их в <messageFormatters>

{% for message_formatter in custom_message_formatters %}
    <messageFormatter contentType="{{message_formatter.content_type}}"
                      class="{{message_formatter.class}}"/>
{% endfor %}

ii) Добавьте их в <messageBuilders>

{% for message_builder in custom_message_builders %}
    <messageBuilder contentType="{{message_builder.content_type}}"
                    class="{{message_builder.class}}"/>
{% endfor %}

2) Добавьте это к deployment.toml

[[custom_message_builders]]
content_type = "application/hal+json"
class="org.apache.synapse.commons.json.JsonStreamBuilder"

[[custom_message_formatters]]
content_type = "application/hal+json"
class="org.apache.synapse.commons.json.JsonStreamFormatter"

Ссылка: https://ei.docs.wso2.com/en/latest/micro-integrator/setup/message_builders_formatters/message-builders-and-formatters/#custom -message-formatter

1 голос
/ 30 января 2020

В API Manager 3.0.0 при добавлении пользовательских построителей сообщений форматирование невозможно выполнить с помощью файла deploy.toml.

Поэтому, если вам нужно настроить дополнительные компоновщики сообщений, форматеры, вам нужно отредактировать <APIM_HOME>/repository/resources/conf/templates/repository/conf/axis2/axis2.xml.j2 и добавить требуемый компоновщик и форматер сообщений.

...