eMagiz Documentation

eMagiz Documentation

  • Docs
  • API
  • Help
  • Blog

›eMagiz Docs

eMagiz Docs

  • Home
  • Configuration import
  • Entity
  • SFTP size file list filter
  • Parameter map to XML transformer
  • Standard header enricher - Reply channel
  • XMPP header enricher - Chat thread id
  • IMAP idle channel adapter
  • Blocking channel connector
  • SOAP attachments header mapper
  • FTP accept once per modification file list filter
  • Standard header enricher - Expiration date
  • Recipient list router
  • HTTP Components message sender
  • Edit Message Bus: Namespace settings
  • Select Properties
  • Transform from enumeration
  • Standard splitter
  • TCP outbound gateway
  • Add security settings
  • Edit Gateway Call
  • Edit XPath Field
  • XML to JSON transformer
  • View license
  • Transform from date/time
  • Connector transport configuration
  • Custom error message activator
  • Payload validating interceptor
  • Netty connector transport configuration
  • New Mendix project credentials
  • Segment group
  • Job registry bean post processor
  • Web service message receiver servlet
  • Ehcache cache
  • SFTP inbound channel adapter
  • Flat file to XML transformer
  • Netty acceptor
  • Create popup - Step 2
  • Kafka template
  • Simple job launcher
  • Tag
  • Message endpoint adapter
  • Byte array raw (de)serializer
  • Edit error alert template
  • JDBC result set to XML transformer
  • Default HTTP header mapper
  • Default SFTP caching session factory
  • Merlin crypto
  • JDBC H2 connection pool
  • Edit Alert Notifying
  • Parse map
  • ThClient table reading activator
  • JMS queue scheduled trigger
  • SQL Script
  • Simple WSDL 1.1 definition
  • Standard router
  • EDI mapping
  • Concurrent map cache
  • EDI to XML transformer
  • XSLT transformer
  • WebSphere caching connection factory
  • SFTP composite file list filter
  • XMPP outbound channel adapter
  • SFTP age file list filter
  • Base64 decoding transformer
  • Source filter
  • Copy properties to runtime
  • Firewall configuration (system admin)
  • Combined entry connector details
  • Payload root QName endpoint mapping - endpoint map entry
  • File to bytes transformer
  • Specify requirements integration details
  • MIME to S/MIME transformer
  • Management
  • Form Title
  • Task executor
  • SSL web service message sender
  • Netty acceptor transport configuration
  • FTP outbound channel adapter
  • Accept once file list filter
  • Metacom authentication SAAJ SOAP interceptor
  • Mendix authentication SOAP header mapper
  • Context handler
  • Simple dispatcher servlet
  • XML to flat file transformer
  • JDBC inbound channel adapter
  • XML mapping message consumer
  • JDBC parameter
  • XSLT snippet
  • Web service header enricher
  • OAuth 2.0 access token advice
  • Header filter
  • Property placeholder
  • Copy CDM Codes and System Codes to Environment
  • HTTP header
  • JSON to XML transformer
  • Generate flat file definition based on comma separated values
  • Standard header enricher - Priority
  • Image transformer
  • HTTP inbound channel adapter
  • OAuth 2.0 resource
  • File item reader message source
  • System settings
  • Amazon S3 authentication interceptor
  • Field parse info
  • MxConnector settings
  • TCP connection factory
  • HornetQ JMS server manager
  • XPath filter
  • Address settings
  • Error to XML transformer
  • Mail header enricher - Bcc
  • SOAP to message header mapping
  • Create popup - Step 1
  • Regex pattern file list filter
  • Message history
  • Kafka outbound channel adapter
  • Proxy web service message sender
  • Custom field
  • JDBC channel message store
  • JDBC outbound channel adapter
  • Runtime scheduled trigger
  • New definition
  • JMS caching connection factory
  • TCP inbound channel adapter
  • Port Forward Maintenance
  • Edit Image
  • Standard header enricher - Custom header
  • eMagiz 3.x license
  • In-VM acceptor transport configuration
  • OAuth 2.0 user redirect required exception resolver
  • Default FTP session factory
  • Simple cache manager
  • Bridge configuration
  • job-dashboard
  • Mendix FileDocument WS request transformer
  • Create new message bus
  • Log entry trigger
  • New XML definition
  • String to wrapped XML transformer
  • Servlet context handler
  • Ehcache cache manager
  • Mail inbound channel adapter
  • Default SFTP session factory
  • Conditional
  • SOAP action callback
  • Standard filter
  • SAAJ SOAP message factory
  • Group
  • ISO8583 XML to bytes transformer
  • Mapping service gateway
  • Delaying file list filter
  • HTTP outbound gateway
  • S/MIME to MIME transformer
  • SFTP simple pattern file list filter
  • Expression evaluating request handler advice
  • Mail attachment transformer
  • History of properties in this environment
  • eMagiz 1.x license
  • Composite cache manager
  • Default FTP caching session factory
  • Cache annotation driven
  • Deployment step
  • Qpid AMQP connector settings
  • Cluster connection configuration
  • XML validating filter
  • Kafka message driven channel adapter
  • Apache ActiveMQ Artemis server
  • Debug interceptor
  • JMS listener
  • Global wire tap
  • XSLT parameter
  • FTP simple pattern file list filter
  • Code type
  • XPath header enricher - Header
  • MIME message to XML transformer
  • A logical service level
  • CDM code
  • XMPP header enricher
  • Recipient
  • Notification setting
  • Column definition
  • New configuration
  • Entry tracking interceptor
  • File inbound channel adapter
  • Security settings
  • FOP XSL-FO result factory
  • File outbound channel adapter
  • Zimbra authentication SAAJ SOAP interceptor
  • new-version
  • Port Forward DMZ
  • Payload type router
  • FTP composite file list filter
  • Sonic connection factory
  • Job
  • eMagiz 2.x license
  • Component
  • HTTP outbound channel adapter
  • Route configuration
  • Default WSDL 1.1 definition
  • JMS listener container
  • JMS outbound gateway
  • JDBC BoneCP data source
  • Channel
  • Edit System
  • Edit Data Type
  • Message channel monitoring trigger
  • XML to MIME message transformer
  • Job manager
  • XMPP presence outbound channel adapter
  • ISO header
  • FTP age file list filter
  • Basic access authentication interceptor
  • Base64 encoding transformer
  • Web service header enricher - SOAP action
  • SOAP action
  • Standard service activator
  • Byte array STX/ETX (de)serializer
  • XML to string transformer
  • Default FTPS caching session factory
  • Accept once per modification file list filter
  • Servlet handler
  • ThClient connector
  • JDBC stored procedure outbound gateway
  • Standard header enricher - Error channel
  • ThClient changes reading activator
  • Logging channel adapter
  • Edit e-mail
  • SFTP outbound channel adapter
  • JMS queue configuration
  • XSLT view
  • JMS message driven channel adapter
  • JDBC stored procedure inbound channel adapter
  • JMS inbound gateway
  • FOP XSL-FO result transformer
  • Mail to string transformer
  • ActiveMQ security manager gateway
  • Message bridge
  • Result to string transformer
  • Payload root QName endpoint mapping
  • ISO8583 bytes to XML transformer
  • Size file list filter
  • Byte array CR/LF (de)serializer
  • Relationship
  • Rename configuration
  • TCP inbound gateway
  • Attribute
  • HTTP request address extracting interceptor
  • Standard header enricher - Correlation id
  • Mendix authentication SAAJ SOAP interceptor
  • Byte array length header (de)serializer
  • Instance configuration
  • Select type of new trigger
  • Byte array text length header (de)serializer
  • Mail header enricher - Attachment filename
  • Poller
  • Mail header enricher - Content type
  • JDBC SQL parameter definition
  • Result to document transformer
  • Concurrent map cache manager
  • Request handler circuit breaker advice
  • Global channel interceptor
  • Mail header enricher - From
  • Calculate exponential moving average
  • Edit eMagiz Mendix Connector configuration
  • Jetty Server
  • XML to EDI transformer
  • Age file list filter
  • JMS outbound channel adapter
  • Transform from boolean
  • OSGi service
  • MBean export
  • JMS XML message converter
  • Object to string transformer
  • Edit popup
  • Lock-file file list filter
  • Edit Attribute
  • FTP size file list filter
  • Mail outbound channel adapter
  • Edit String Value Transformation
  • Transform from numbers
  • UN/EDIFACT to XML transformer
  • Microflow invoking message consumer
  • SFTP regex pattern file list filter
  • New Mendix user credentials
  • In VM acceptor
  • File to string transformer
  • Timestamped filename generator
  • WebSphere connection factory
  • Wizard 'publish web service'
  • Property
  • HTTP inbound gateway
  • SSL select channel connector
  • FTP lock-file file list filter
  • Web service inbound gateway
  • Job execution listener gateway
  • JVM performance monitor
  • Topic configuration
  • Standard inbound channel adapter
  • Netty connector
  • Log appender channel adapter
  • Destination filter
  • Custom attribute
  • Mail header enricher
  • OAuth 2.0 REST template
  • Mail header enricher - Reply to
  • Edit Root Entity
  • Map job registry
  • Character replacing transformer
  • SOAP fault message resolver
  • XMPP inbound channel adapter
  • Detailed SOAP fault message resolver
  • Default FTPS session factory
  • FTP inbound channel adapter
  • Table definition
  • Basic security handler
  • Message handler monitoring trigger
  • New Mendix module
  • WS-Addressing action callback
  • XPath expression
  • Import a Mendix domain model
  • SFTP accept once per modification file list filter
  • Default TCP SSL context support
  • Resource handler
  • Static Input
  • Field
  • Qpid JMS connection factory
  • Mail header enricher - Cc
  • FTP regex pattern file list filter
  • REST template
  • MBean server
  • Segment
  • Format filename generator
  • Certificate configuration
  • Transform from string
  • Sub-component
  • JDBC OSGi data source reference
  • XPath transformer
  • Port Forward User
  • JDBC Initialize database
  • Job repository
  • Message type
  • Standard transformer
  • Byte array single terminator (de)serializer
  • XPath splitter
  • Properties
  • Select channel connector
  • JMX multi attribute polling message source
  • Log item type mapping
  • Header value router
  • Groovy variable
  • Port Forward JMS
  • XPath router
  • Mail header enricher - Multipart mode
  • JDBC outbound gateway
  • Sonic caching connection factory
  • SOAP message dispatcher
  • Control bus
  • Standard header enricher
  • Exit tracking interceptor
  • TCP outbound channel adapter
  • Azure Storage Services authentication interceptor
  • SFTP lock-file file list filter
  • Edit line tokenizer
  • XMPP connection
  • Edit message type
  • Servlet mapping
  • WSS4J security interceptor
  • XPath header enricher
  • Runtime monitoring trigger
  • In-VM connector transport configuration
  • Mail header enricher - Subject
  • Aggregator
  • Edit extra JMS queue
  • Create queue
  • Simple pattern file list filter
  • Mendix service definition
  • Java mail sender
  • Request handler retry advice
  • Job launching gateway
  • XSLT extension gateway
  • In VM connector
  • Composite file list filter
  • Cluster connection
  • XML to UN/EDIFACT transformer
  • Web service message listener
  • XMPP presence inbound channel adapter
  • JMS queue monitoring trigger
  • XMPP header enricher - Chat to
  • Target Accept
  • XMPP presence to XML transformer
  • JMS OSGi connection factory reference
  • Web service outbound gateway
  • Mail header enricher - To
  • JDBC stored procedure outbound channel adapter
  • Header value mapping
  • Flow controller
  • Simple XSD schema
  • HornetQ caching connection factory
  • HornetQ connection factory
  • Command controller
  • Payload type mapping
  • View Property
  • Create an AWS slot for this bus environment
  • XPath value mapping
  • Authorization service gateway
  • Command executor gateway
  • HornetQ security manager gateway
  • Message handler scheduled trigger
  • Error message trigger
  • Edit Cron Helper
  • Cron-trigger helper
  • Message channel scheduled trigger
  • Mikrotik service activator
  • -
  • Dashboard
  • Runtime dashboard
  • Packages
  • Bus processes
  • Edit Message Bus
  • Settings
  • Edit settings
  • New cloud runtime
  • Cloud runtime settings
  • Wire tap
  • Integration
  • Notification setting
  • Step
  • amqp-broker
  • view-amqp-broker
  • Value mapping
  • Kafka message listener container
  • Global settings
  • Web service URI variable
  • HTTP URI variable
  • Edit transport configuration
  • Edit
  • Flow designer
  • Other
  • System code
  • Edit eMagiz Runtime VM

SOAP attachments header mapper

Maps attachments, as used in the SOAP with Attachments specification, to and from message headers.

SoapHeaderMapper implementation that converts MIME attachments, as used in the SOAP with Attachments (SwA) specification, to and from message headers.

Incoming MIME attachments will converted to message headers, but the (binary) content of the attachments is directly written to disk to prevent reading potentially huge amounts of data into memory. Outgoing MIME attachments will be converted from these same message headers, with the content being read directly from disk. This implies that both the inbound and outbound gateways must have access to the same directory.

The message header used by this header mapper is named emagiz_ws_attachments, with its value being a List of attachments. Each attachment is represented as a Map with the following entries:

  • contentId (String): the (unique) Content-ID of the MIME attachment
  • contentType (String): the Content-Type of the MIME attachment, e.g. application/pdf
  • file (File): the file that contains the (binary) content of the MIME attachment

Normally no attachments equals no emagiz_ws_attachments header on the message, but there is one exception: on the response message of a web service outbound gateway this header is always added, even if there were no MIME attachments in the SOAP response (in this case the header value will be an empty list). This is done to prevent the gateway from copying the original header from the request message to the response message.

When sending attachments with a request, this header mapper will not delete the files containing the content for the MIME attachments, because the web service call might need to be retried later in case of errors. It is up to the user to delete these files after the call succeeded. To make this easier you can use the AttachmentHeader helper class within SpEL expressions. For example, this expression can be used in an expression evaluating request handler advice: T(com.emagiz.components.ws.AttachmentHeader).copy(headers).deleteFiles()

To populate the emagiz_ws_attachments header without using a web service inbound gateway, you can use the same AttachmentHeader helper class. For example, this expression can be used right after a file inbound channel adapter to create attachment headers for files that are picked up by the adapter: T(com.emagiz.components.ws.AttachmentHeader).create().add(null, 'image/png', payload).build()

Note that the first argument for add(...), the Content-ID, is null in this example: this will result in a randomly generated UUID being used. The second argument, the Content-Type, is also optional: if null it will default to application/octet-stream.

To read from the emagiz_ws_attachments header, you can simply use standard SpEL fuctionality. For example, headers.emagiz_ws_attachments[0].file returns the file containing the content of the first MIME attachment.

Ignore incoming

Whether to ignore incoming MIME attachments, i.e. not process them at all and (importantly) not save them to disk. If you are only ever sending attachments, set this to true: otherwise you might quickly run out of disk space, because anyone can just send any number of MIME attachments with their requests or responses.

Note that even when setting this to true, response messages of a web service outbound gateway will still have the emagiz_ws_attachments header, with its value being an empty list. This is done to prevent the gateway from copying the original header from the request message to the response message.

Default is false.

Directory

The directory where the (binary) content of incoming MIME attachments will be stored as files.

When sending MIME attachments this setting is not used, because the full path to the file location is read from the header information. However, when using a web service inbound gateway paired with a web service outbound gateway to forward attachments, practically speaking both gateways must have (shared) access to this directory. This can be achieved by deploying both on the same server.

This directory is only used when ignore incoming is false, in which case make sure to periodically cleanup old files!

Auto create directory

Specify whether to automatically create the directory if it does not yet exist when this header mapper is being initialized.

If set to false and the directory does not exist upon initialization, an exception will be thrown.

Default is true.

Delete outgoing reply files

Automatically delete the files on disk containing the contents for the MIME attachments after sending them in a web service response. When using this feature, make sure that your flow does not send any incoming attachments back in the response: this will cause problems as files might be deleted before the attachments have fully been received.

When sending attachments in a web service request, this header mapper will not delete the files containing the content for the MIME attachments, because the web service call might need to be retried later in case of errors. It is up to the user to delete these files after the call succeeded. To make this easier you can use the AttachmentHeader helper class within SpEL expressions. For example, this expression can be used in an expression evaluating request handler advice: T(com.emagiz.components.ws.AttachmentHeader).copy(headers).deleteFiles()

Regardless of whether you use this feature or not, make sure to periodically cleanup old files as well, otherwise files of messages that do not follow the "happy flow" will remain on disk forever.

Default is true.

Id

Name that uniquely identifies this flow component.

Required

← Blocking channel connectorFTP accept once per modification file list filter →
eMagiz Documentation
Docs
Getting Started (or other categories)Guides (or other categories)API Reference (or other categories)
Community
User ShowcaseStack OverflowProject ChatTwitter
More
BlogGitHubStar
Copyright © 2019 eMagiz