Я создал приложение Camel, которое использует Kafka, вызывает сервис SOAP и производит его в Kafka.
Из-за Camels automati c перенос заголовков между протоколами (очень полезно), в сообщениях Kafka было довольно много ненужных заголовков , а также SOAP запросов. Поскольку я не хочу удалять их из Camel Exchange, я использовал Camels HeaderFilterStrategy
, чтобы удалить их только из исходящих сообщений.
Я расширил Camels KafkaHeaderFilterStrategy
, чтобы фильтровать заголовки сообщений в создаваемых сообщениях Kafka. Я попытался сделать то же самое с CxfHeaderFilterStrategy
, но, похоже, он фильтрует только заголовки SOAP, в то время как мои запросы SOAP содержали все заголовки Kafka в виде заголовков HTTP.
Поэтому я построил перехватчик CXF out , который фильтрует карту Message.PROTOCOL_HEADERS
.
Это работает хорошо, но мне интересно , есть ли «верблюжий способ» для фильтрации HTTP-заголовков CXF SOAP сообщений .