2. Enterprise Integration Patterns

setHeader

Version

Sets an HTTP header field on the current message to a constant string or a computed value. SpEL template expressions are supported by default; Groovy, JsonPath, and XPath are also available. See tutorials/getting-started/60-SetHeader.yaml.

Example Configuration

api:
port: 2000
flow:
- response:
- setHeader:
name: X-Powered-By
value: Membrane
- setHeader:
name: X-Method
value: ${method}
- return:
status: 200
api:
   port: 2000
   flow:
     - response:
         - setHeader:
             name: X-Powered-By
             value: Membrane
         - setHeader:
             name: X-Method
             value: ${method}
     - return:
         status: 200

Syntax

setHeader:
'$ref': <string>
failOnError: <boolean>
ifAbsent: <boolean>
language: groovy
name: <string>
value: <string>
xmlConfig: {}
setHeader:
  '$ref': <string>
  failOnError: <boolean>
  ifAbsent: <boolean>
  language: groovy
  name: <string>
  value: <string>
  xmlConfig: {}

Attributes

NameRequiredDefaultDescriptionExamples
$reffalse-Reference a component defined under components.-
failOnErrorfalsetrueWhen true, aborts processing if expression evaluation fails. When false, logs the error and continues unchanged.false
ifAbsentfalsefalseWhen true, only sets the field if it is not already present in the message.true
languagefalseSpELScripting language used to evaluate the value expression.SpEL | groovy | jsonpath | xpath
namefalse-Name of the header field or exchange property key to set.X-Powered-By
valuefalse-Value to assign, evaluated as a SpEL template expression by default. Use the language attribute to switch to Groovy, JsonPath, or XPath.${method}

Child Structure

ElementCardinalityDescription
xmlConfig0..1XML namespace declarations for XPath expressions in the value.

Can be used in