Что является заменой атрибута contentType устаревшего mule-transport-http? - PullRequest
0 голосов
/ 25 апреля 2018

Переключение с старомодным mule-transport-http на mule-module-http.

В моем XML у меня была следующая входящая конечная точка:

<http:inbound-endpoint contentType="text/xml" exchange-pattern="request-response" host="0.0.0.0" port=1337 path="/">

Естьнет аналогичного атрибута в современном <http:listener> (см. таблица сравнения ).Как предполагается заменить этот параметр?

1 Ответ

0 голосов
/ 26 апреля 2018

Я провел несколько тестов со своим старым проектом Mule 3.5.0.

Когда вы устанавливаете атрибут contentType для устаревшего http:inbound-endpoint, он не отклоняет запросы с другим или отсутствующим заголовком Content-Type. Он также не устанавливает его в качестве значения для заголовка ответа. НО я заметил, что он устанавливает свойство вызова (переменная) Content-Type (может быть проверено с помощью message.getInvocationPropertyNames()). Таким образом, эквивалент будет:

<http:listener config-ref="HTTP_Listener_Configuration"
path="somePath"/>
<set-variable variableName="Content-Type" value="text/xml"/>

Я не вижу смысла оставлять эту переменную, если она не используется каким-либо образом (по крайней мере, я не заметил ее использования)

...