Я использую фильтр Spring Integration для структурной проверки входящей полезной нагрузки, и если проверка не проходит, я хочу добавить несколько пользовательских заголовков к исходному сообщению.
Код фильтра ниже:
@Service("structureValidationFilter")
public class StructureValidationFilter implements MessageSelector {
@Override
public boolean accept(Message<?> message) {
// TODO Auto-generated method stub
boolean status=true;
if(message.getPayload() instanceof CFKRequestBody) {
CFKRequestBody body=(CFKRequestBody)message.getPayload();
if(!body.getInitiatingPartyId().equalsIgnoreCase("BPKV")) {
message = MutableMessageBuilder.fromMessage(message).
setHeader("BPKV_ERROR_CODE", "Ïnvalid Initiating part id").
setHeader("HTTP_STATUS", "400").build();
return false;
}
}
return status;
}
}
Но заголовки не заполняются в Послании. Невозможно увидеть заголовки, добавленные в следующем компоненте. Что я тут не так делаю.