2 Home
gitea_admin edited this page 2026-03-11 14:41:17 +00:00

MLLP

Communicate with external systems using the MLLP protocol.

Metadata

Property Value
Scheme mllp
Support Level Stable
Labels health
Version 4.10.2

Maven Dependency

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-mllp</artifactId>
    <version>4.10.2</version>
</dependency>

Endpoint Properties

Name Type Required Default Description
hostname string Hostname or IP for connection for the TCP connection. The default value is null, which means any local IP address
port integer Port number for the TCP connection
autoAck boolean true Enable/Disable the automatic generation of a MLLP Acknowledgement MLLP Consumers only
charsetName string Sets the default charset to use
hl7Headers boolean true Enable/Disable the automatic generation of message headers from the HL7 Message MLLP Consumers only
requireEndOfData boolean true Enable/Disable strict compliance to the MLLP standard. The MLLP standard specifies START_OF_BLOCKhl7 payloadEND_OF_BLOCKEND_OF_DATA, however, some systems do not send the final END_OF_DATA byte. This setting controls whether or not the final END_OF_DATA byte is required or optional.
stringPayload boolean true Enable/Disable converting the payload to a String. If enabled, HL7 Payloads received from external systems will be validated converted to a String. If the charsetName property is set, that character set will be used for the conversion. If the charsetName property is not set, the value of MSH-18 will be used to determine th appropriate character set. If MSH-18 is not set, then the default ISO-8859-1 character set will be use.
validatePayload boolean false Enable/Disable the validation of HL7 Payloads If enabled, HL7 Payloads received from external systems will be validated (see Hl7Util.generateInvalidPayloadExceptionMessage for details on the validation). If and invalid payload is detected, a MllpInvalidMessageException (for consumers) or a MllpInvalidAcknowledgementException will be thrown.
acceptTimeout integer 60000 Timeout (in milliseconds) while waiting for a TCP connection TCP Server Only
backlog integer 5 The maximum queue length for incoming connection indications (a request to connect) is set to the backlog parameter. If a connection indication arrives when the queue is full, the connection is refused.
bindRetryInterval integer 5000 TCP Server Only - The number of milliseconds to wait between bind attempts
bindTimeout integer 30000 TCP Server Only - The number of milliseconds to retry binding to a server port
bridgeErrorHandler boolean true Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to receive incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. If disabled, the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions by logging them at WARN or ERROR level and ignored.
lenientBind boolean false TCP Server Only - Allow the endpoint to start before the TCP ServerSocket is bound. In some environments, it may be desirable to allow the endpoint to start before the TCP ServerSocket is bound.
maxConcurrentConsumers integer 5 The maximum number of concurrent MLLP Consumer connections that will be allowed. If a new connection is received and the maximum is number are already established, the new connection will be reset immediately.
reuseAddress boolean false Enable/disable the SO_REUSEADDR socket option.
exceptionHandler object To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored.
exchangePattern object InOut Sets the exchange pattern when the consumer creates an exchange.
connectTimeout integer 30000 Timeout (in milliseconds) for establishing for a TCP connection TCP Client only
idleTimeoutStrategy object RESET decide what action to take when idle timeout occurs. Possible values are : RESET: set SO_LINGER to 0 and reset the socket CLOSE: close the socket gracefully default is RESET.
keepAlive boolean true Enable/disable the SO_KEEPALIVE socket option.
tcpNoDelay boolean true Enable/disable the TCP_NODELAY socket option.
lazyStartProducer boolean false Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.
maxBufferSize integer 1073741824 Maximum buffer size used when receiving or sending data over the wire.
minBufferSize integer 2048 Minimum buffer size used when receiving or sending data over the wire.
readTimeout integer 5000 The SO_TIMEOUT value (in milliseconds) used after the start of an MLLP frame has been received
receiveBufferSize integer 8192 Sets the SO_RCVBUF option to the specified value (in bytes)
receiveTimeout integer 15000 The SO_TIMEOUT value (in milliseconds) used when waiting for the start of an MLLP frame
sendBufferSize integer 8192 Sets the SO_SNDBUF option to the specified value (in bytes)
sslContextParameters object Sets the SSLContextParameters for securing TCP connections. If set, the MLLP component will use SSL/TLS for securing both producer and consumer TCP connections. This allows the configuration of trust stores, key stores, protocols, and other SSL/TLS settings. If not set, the MLLP component will use plain TCP communication.
idleTimeout integer The approximate idle time allowed before the Client TCP Connection will be reset. A null value or a value less than or equal to zero will disable the idle timeout.