All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xml.xsd.FrankConfig.xsd Maven / Gradle / Ivy

There is a newer version: 8.3.0
Show newest version


  
    
      Container of Adapters that belong together.
 A configuration may be deployed independently from other configurations.
 Names of nested elements like Adapters, Receivers, listeners and senders
 can be reused in other configurations.
 <br/><br/>
 Configurations are shown in the Frank!Console along with their Adapters,
 Receivers, listeners and senders. The Adapter Status page of the Frank!Console
 has a tab for each configuration that only shows information
 about that configuration. See the Frank!Manual for details.
    
    
      
        
      
    
  
  
    
      Wrapper element to help split up large configuration files into smaller valid XML files. It may be used as root tag when an XML file contains multiple adapters and/or jobs. The Module element itself does not influence the behavior of Frank configurations.
    
    
      
      
      
    
  
  
    
      
        reference to a configuration to be included in the current.
      
    
    
    
    
    
  
  
    
      The Adapter is the central manager in the framework. It has knowledge of both
 Receivers as well as the PipeLine and statistics.
 The Adapter is the class that is responsible for configuring, initializing and
 accessing/activating Receivers, Pipelines, statistics etc.
 <br/>
 An Adapter receives a specific type of messages and processes them. It has Receivers
 that receive the messages and a PipeLine that transforms the incoming messages. Each adapter is part of a Configuration.
 <br/>
 If an adapter can receive its messages through multiple channels (e.g. RESTful HTTP requests, incoming files, etc),
 each channel appears as a separate Receiver nested in the adapter. Each Receiver is also responsible
 for dealing with
 the result of its received messages; the result is the output of the PipeLine. The result
 consists of the transformed message and a state. The Frank!Framework distinguishes between exit states
 SUCCESS and ERROR. There is also a state REJECTED for messages that are not accepted by the Frank!Framework
 and that are not processed by the PipeLine. If the exit state is ERROR, the result message may
 not be usable by the calling system. This can be fixed by adding an
 errorMessageFormatter that formats the result message if the state is ERROR.
 <br/><br/>
 Adapters gather statistics about the messages they process.
 <br/>
 Adapters can process messages in parallel. They are thread-safe.
    
    
      
      
      
    
    
      
        name of the adapter
      
    
    
      
        some functional description of the <code>Adapter</code>
      
    
    
      
        AutoStart indicates that the adapter should be started when the configuration
 is started. Default: <code>true</code>
      
    
    
      
        If <code>true</code> a null message is replaced by an empty message Default: <code>false</code>
      
    
    
      
        number of message displayed in ibisconsole Default: 10
      
    
    
      
        Defines behaviour for logging messages. Configuration is done in the MSG appender in log4j4ibis.properties. Default: <code>INFO, unless overridden by property msg.log.level.default</code>
      
      
        
      
    
    
      
        If set to <code>true</code>, the length of the message is shown in the msg log instead of the content of the message Default: <code>false</code>
      
    
    
    
    
    
    
  
  
    
      Wrapper for a listener that specifies a channel for the incoming messages of a specific Adapter.
 By choosing a listener, the Frank developer determines how the messages are received.
 For example, an org.frankframework.http.rest.ApiListener receives RESTful HTTP requests and a
 JavaListener receives messages from direct Java calls.
 <br/><br/>
 Apart from wrapping the listener, a Receiver can be configured
 to store received messages and to keep track of the processed / failed
 status of these messages.
 <br/><br/>
 There are two kinds of listeners: synchronous listeners and asynchronous listeners.
 Synchronous listeners are expected to return a response. The system that triggers the
 receiver typically waits for a response before proceeding its operation. When a
 org.frankframework.http.rest.ApiListener receives a HTTP request, the listener is expected to return a
 HTTP response. Asynchronous listeners are not expected to return a response. The system that
 triggers the listener typically continues without waiting for the adapter to finish. When a
 receiver contains an asynchronous listener, it can have a sender that sends the transformed
 message to its destination. Receivers with an asynchronous listener can also have an error sender that is used
 by the receiver to send error messages. In other words: if the result state is SUCCESS then the
 message is sent by the ordinary sender, while the error sender is used if the result state
 is ERROR.
 <br/><br/>
 <b>Transaction control</b><br/><br/>
 If transacted is set to <code>true</code>, messages will be received and processed under transaction control.
 This means that after a message has been read and processed and the transaction has ended, one of the following apply:
 <table border="1">
 <tr><th>situation</th><th>input listener</th><th>Pipeline</th><th>inProcess storage</th><th>errorSender</th><th>summary of effect</th></tr>
 <tr><td>successful</td><td>message read and committed</td><td>message processed</td><td>unchanged</td><td>unchanged</td><td>message processed</td></tr>
 <tr><td>procesing failed</td><td>message read and committed</td><td>message processing failed and rolled back</td><td>unchanged</td><td>message sent</td><td>message only transferred from listener to errroSender</td></tr>
 <tr><td>listening failed</td><td>unchanged: listening rolled back</td><td>no processing performed</td><td>unchanged</td><td>unchanged</td><td>no changes, input message remains on input available for listener</td></tr>
 <tr><td>transfer to inprocess storage failed</td><td>unchanged: listening rolled back</td><td>no processing performed</td><td>unchanged</td><td>unchanged</td><td>no changes, input message remains on input available for listener</td></tr>
 <tr><td>transfer to errorSender failed</td><td>message read and committed</td><td>message processing failed and rolled back</td><td>message present</td><td>unchanged</td><td>message only transferred from listener to inProcess storage</td></tr>
 </table>
 If the application or the server crashes in the middle of one or more transactions, these transactions
 will be recovered and rolled back after the server/application is restarted. Then always exactly one of
 the following applies for any message touched at any time by Ibis by a transacted receiver:
 <ul>
 <li>It is processed correctly by the pipeline and removed from the input-queue,
     not present in inProcess storage and not send to the errorSender</li>
 <li>It is not processed at all by the pipeline, or processing by the pipeline has been rolled back;
     the message is removed from the input queue and either (one of) still in inProcess storage <i>or</i> sent to the errorSender</li>
 </ul>

 <p><b>commit or rollback</b><br/>
 If transacted is set to <code>true</code>, messages will be either committed or rolled back.
 All message-processing transactions are committed, unless one or more of the following apply:
 <ul>
 <li>The PipeLine is transacted and the exitState of the pipeline is not equal to SUCCESS</li>
 <li>a PipeRunException or another runtime-exception has been thrown by any Pipe or by the PipeLine</li>
 <li>the setRollBackOnly() method has been called on the userTransaction (not accessible by Pipes)</li>
 </ul>
 </p>
    
    
      
      
      
      
      
    
    
      
        Sets the name of the Receiver, as known to the Adapter.
 If the listener implements the name interface and <code>getName()</code>
 of the listener is empty, the name of this object is given to the listener.
      
    
    
      
        One of 'continue', 'recover' or 'close'. Controls the behaviour of the Receiver, when it encounters an error during processing of a message. Default: CONTINUE
      
      
        
      
    
    
      
        The number of threads that may execute a Pipeline concurrently (only for pulling listeners) Default: 1
      
    
    
      
        The number of threads that are actively polling for messages concurrently. '0' means 'limited only by <code>numthreads</code>' (only for pulling listeners) Default: 1
      
    
    
      
        The number of seconds waited after an unsuccessful poll attempt, before another poll attempt is made. Only for polling listeners, not for e.g. jms, webservice or javaListeners Default: 10
      
    
    
      
        timeout (in seconds) to start receiver. If this timeout is exceeded, the Receiver startup is
  aborted and all resources closed and the receiver will be in state {@code EXCEPTION_STARTING}
  and a new start command may be issued again.
      
    
    
      
        timeout (in seconds) to stop receiver. If this timeout is exceeded, stopping will be aborted
  and the receiver will be in state {@code EXCEPTION_STOPPING}.
  The receiver will no longer be running but some resources might not have been cleaned up properly.
      
    
    
      
        If set to <code>true</code>, each message is checked for presence in the messageLog. If already present, it is not processed again. Only required for non XA compatible messaging. Requires messageLog! Default: false
      
    
    
      
        (Only used when <code>checkForDuplicates=true</code>) Indicates whether the messageid or the correlationid is used for checking presence in the message log Default: MESSAGEID
      
      
        
      
    
    
      
        The maximum delivery count after which to stop processing the message (only for listeners that know the delivery count of received messages). If -1 the delivery count is ignored Default: 5
      
    
    
      
        The number of times a processing attempt is automatically retried after an exception is caught or rollback is experienced. If <code>maxRetries &lt; 0</code> the number of attempts is infinite Default: 1
      
    
    
      
        Size of the cache to keep process results, used by maxRetries Default: 100
      
    
    
      
        XPath expression to extract correlationid from message
      
    
    
      
        Namespace defintions for correlationIDXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions
      
    
    
      
        Stylesheet to extract correlationID from message
      
    
    
      
        XPath expression to extract label from message
      
    
    
      
        Namespace defintions for labelXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions
      
    
    
      
        Stylesheet to extract label from message
      
    
    
      
        If set (>=0) and the character data length inside a xml element exceeds this size, the character data is chomped (with a clear comment)
      
    
    
      
        If set, the character data in this XML element is stored inside a session key and in the message it is replaced by a reference to this session key: {sessionKey: + <code>elementToMoveSessionKey</code> + }
      
    
    
      
        (Only used when <code>elementToMove</code> or <code>elementToMoveChain</code> is set) Name of the session key wherein the character data is stored Default: ref_ + the name of the element
      
    
    
      
        Like <code>elementToMove</code> but element is preceded with all ancestor elements and separated by semicolons (e.g. adapter;pipeline;pipe)
      
    
    
    
      
        Regular expression to mask strings in the errorStore/logStore and logfiles. Every character between to the strings in this expression will be replaced by a '*'. For example, the regular expression (?&lt;=&lt;party&gt;).*?(?=&lt;/party&gt;) will replace every character between keys &lt;party&gt; and &lt;/party&gt;
      
    
    
      
        Only used when hideRegex is not empty Default: all
      
      
        
      
    
    
      
        Comma separated list of keys of session variables which are available when the <code>PipelineSession</code> is created and of which the value will not be shown in the log (replaced by asterisks)
      
    
    
      
        If set to <code>true</code>, every message read will be processed as if it is being retried, by setting a session variable to retry. Default: false
      
    
    
      
        Number of connection attempts to put the adapter in warning status Default: 5
      
    
    
    
    
    
    
    
  
  
    
      Placeholder class to allow legacy configuration notations <code>&lt;param type='number' /&gt;</code> in the new Frank!Config XSD.
 <p>
 The attribute <code>type</code> has been removed in favor of explicit ParameterTypes such as: <code>NumberParameter</code>, <code>DateParameter</code> and <code>BooleanParameter</code>.
 Using the new elements enables the use of auto-completion for the specified type.
    
    
      
    
    
      
        The target data type of the parameter, related to the database or XSLT stylesheet to which the parameter is applied. Default: STRING
      
      
        
      
    
    
      
        Name of the parameter
      
    
    
    
    
    
    
      
        URL to a stylesheet that wil be applied to the contents of the message or the value of the session-variable.
      
    
    
      
        the XPath expression to extract the parameter value from the (xml formatted) input or session-variable.
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
    
      
        Namespace definitions for xpathExpression. Must be in the form of a comma or space separated list of
 <code>prefix=namespaceuri</code>-definitions. One entry can be without a prefix, that will define the default namespace.
      
    
    
      
        When set <code>true</code> namespaces (and prefixes) in the input message are removed before the stylesheet/xpathExpression is executed Default: <code>false</code>
      
    
    
    
    
    
      
        Alias used to obtain username and password, used when a <code>pattern</code> containing {username} or {password} is specified
      
    
    
      
        Default username that is used when a <code>pattern</code> containing {username} is specified
      
    
    
      
        Default password that is used when a <code>pattern</code> containing {password} is specified
      
    
    
    
    
    
    
    
    
    
    
  
  
    
      Required in each Adapter to transform incoming messages. A pipeline
 is a sequence of pipes. A
 pipeline also defines its allowed end states using the <code>&lt;Exits&gt;</code>
 tag.
 <br/><br/>
 The pipes in a PipeLine may not be executed in sequential order, see PipeForward.
 <br/><br/>
 A pipeline gathers statistics about the messages it processes.
 <br/><br/>
 In the AppConstants there may be a property named <code>log.logIntermediaryResults</code> (true/false)
 which indicates whether the intermediary results (between calling pipes) have to be logged.
 <br/><br/>
 <b>Transaction control</b><br/><br/>
 THE FOLLOWING TO BE UPDATED, attribute 'transacted' replaced by 'transactionAttribute'

 If transacted is set to <code>true</code>, messages will be processed
 under transaction control. Processing by XA-compliant pipes (i.e. Pipes that implement the
 IXAEnabled-interface, set their transacted-attribute to <code>true</code> and use XA-compliant
 resources) will then either be committed or rolled back in one transaction.

 If transacted is set to <code>true</code>, either an existing transaction
 (started by a transactional receiver) is joined, or new one is created (if the message processing request
 is not initiated by a receiver under transaction control.
 Messages are only committed or rolled back by the Pipeline if it started the transaction itself. If
 the pipeline joined an existing transaction, the commit or rollback is left to the object that started
 the transaction, i.e. the receiver. In the latter case the pipeline can indicate to the receiver that the
 transaction should be rolled back (by calling UserTransaction.setRollBackOnly()).

 The choice whether to either commit (by Pipeline or Receiver) or rollback (by Pipeline or Receiver)
 is made as follows:

 If the processing of the message concluded without exceptions and the status of the transaction is
 STATUS_ACTIVE (i.e. normal) the transaction will be committed. Otherwise it will be rolled back,
 or marked for roll back by the calling party.
    
    
      
      
      
      
      
      
      
      
      
    
    
      
        Name of the first pipe to execute when a message is to be processed Default: first pipe of the pipeline
      
    
    
      
        Maximum number of threads that may execute this Pipeline simultaneously, use 0 to disable limit Default: 0
      
    
    
      
        If set <code>true</code> the original message without namespaces (and prefixes) is stored under the session key originalMessageWithoutNamespaces Default: false
      
    
    
      
        If messageSizeWarn>=0 and the size of the input or result pipe message exceeds the value specified a warning message is logged. You can specify the value with the suffixes <code>KB</code>, <code>MB</code> or <code>GB</code> Default: application default (30MB)
      
    
    
      
        when specified and <code>null</code> is received as a message the message is changed to the specified value
      
    
    
    
    
    
    
    
  
  
    
      Appears inside a pipe and defines what pipe or exit to execute next. When the
 execution of a pipe is done, the pipe looks up the next pipe or exit to execute.
 This pipe or exit is searched based on a key that describes what happened during
 pipe execution. For example a FixedResultPipe searches for key
 <code>filenotfound</code> if it tried to read a file that did not exist,
 preventing it from producing the desired output message. If there was
 no error, the FixedResultPipe searches for key <code>success</code>.
 <br/><br/>
 Each <code>&lt;Forward&gt;</code> tag is used to link a search key (<code>name</code> attribute)
 to a pipe or exit to execute next (<code>path</code> attribute). The forward's <code>path</code>
 attribute references the target pipe or exit by its <code>name</code> attribute, see
 AbstractPipe and PipeLineExit. For most pipes and most keys, the next
 pipe is executed if no forward is found. By default, the pipes in a pipeline are executed consecutively.
    
    
      
        the <code>name</code> is a symbolic reference to a <code>path</code>.<br/>
      
    
    
      
        The name of the next Pipe or Exit. When the Pipeline doesn't have an Exits element configured it will be
 initialized with one Exit having name READY and state SUCCESS
      
    
    
    
    
    
  
  
    
      Locker of scheduler jobs and pipes.

 Tries to set a lock (by inserting a record in the database table IbisLock) and only if this is done
 successfully the job is executed.

 For an Oracle database the following objects are used:
  <pre>
	CREATE TABLE &lt;schema_owner&gt;.IBISLOCK
	(
	OBJECTID VARCHAR2(100 CHAR),
	TYPE CHAR(1 CHAR),
	HOST VARCHAR2(100 CHAR),
	CREATIONDATE TIMESTAMP(6),
	EXPIRYDATE TIMESTAMP(6)
	CONSTRAINT PK_IBISLOCK PRIMARY KEY (OBJECTID)
	);

	CREATE INDEX &lt;schema_owner&gt;.IX_IBISLOCK ON &lt;schema_owner&gt;.IBISLOCK
	(EXPIRYDATE);

	GRANT DELETE, INSERT, SELECT, UPDATE ON &lt;schema_owner&gt;.IBISLOCK TO &lt;rolename&gt;;
	GRANT SELECT ON SYS.DBA_PENDING_TRANSACTIONS TO &lt;rolename&gt;;

	COMMIT;
  </pre>
    
    
      
        Identifier for this lock
      
    
    
      
        Type for this lock: P(ermanent) or T(emporary). A temporary lock is released after the job has completed Default: T
      
      
        
      
    
    
      
        Format for date which is added after <code>objectid</code> (e.g. yyyyMMdd to be sure the job is executed only once a day)
      
    
    
      
        The time (for type=P in days and for type=T in hours) to keep the record in the database before making it eligible for deletion by a cleanup process Default: 30 days (type=P), 4 hours (type=T)
      
    
    
      
        The number of times an attempt should be made to acquire a lock, after this many times an exception is thrown when no lock could be acquired, when -1 the number of retries is unlimited Default: 0
      
    
    
      
        The time in ms to wait before the first attempt to acquire a lock is made Default: 0
      
    
    
      
        The time in ms to wait before another attempt to acquire a lock is made Default: 10000
      
    
    
      
        If > 0: The time in s to wait before the INSERT statement to obtain the lock is canceled. N.B. On Oracle hitting this lockWaitTimeout may cause the error: (SQLRecoverableException) SQLState [08003], errorCode [17008] connection closed Default: 0
      
    
    
      
        If set <code>true</code> and the IBISLOCK table does not exist in the database, the process continues as if the lock was obtained
      
    
    
      
        The <code>transactionAttribute</code> declares transactional behavior of execution. It applies both to database transactions and XA transactions.
 The pipeline uses this to start a new transaction or suspend the current one when required.
 For developers: it is equal to <a href=\"https://docs.oracle.com/javaee/7/tutorial/transactions003.htm\">EJB transaction attribute</a>.
 Possible values for transactionAttribute:
   <table border=\"1\">
     <tr><th>transactionAttribute</th><th>callers Transaction</th><th>Pipeline excecuted in Transaction</th></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Required</td>    <td>none</td><td>T2</td></tr>
 											      <tr><td>T1</td>  <td>T1</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">RequiresNew</td> <td>none</td><td>T2</td></tr>
 											      <tr><td>T1</td>  <td>T2</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Mandatory</td>   <td>none</td><td>error</td></tr>
 											      <tr><td>T1</td>  <td>T1</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">NotSupported</td><td>none</td><td>none</td></tr>
 											      <tr><td>T1</td>  <td>none</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Supports</td>    <td>none</td><td>none</td></tr>
  										      <tr><td>T1</td>  <td>T1</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Never</td>       <td>none</td><td>none</td></tr>
 											      <tr><td>T1</td>  <td>error</td></tr>
   </table> Default: Supports
      
      
        
      
    
    
      
        Timeout (in seconds) of transaction started to process a message. Default: <code>0</code> (use system default)
      
    
    
    
      
        Authentication alias used to authenticate when connecting to database
      
    
    
      
        User name for authentication when connecting to database, when none found from <code>authAlias</code>
      
    
    
      
        Password for authentication when connecting to database, when none found from <code>authAlias</code>
      
    
    
      
        controls the use of transactions
      
    
    
    
    
    
    
    
    
    
    
    
    
    
      
        Name of the sender or the listener
      
    
    
    
    
    
  
  
    
      Pipeline exit container in which all (required) Exits must be defined.
 Multiple exits may be provided each with their unique name.
 <br/><br/>
 If no exits are specified, a default one is created with name="READY" and state="SUCCESS".
 <br/><br/>
 <b>example:</b> <code><pre>
   &lt;Exits&gt;
      &lt;Exit name="READY" state="SUCCESS" /&gt;
      &lt;Exit name="Created" state="ERROR" code="201" empty="true" /&gt;
      &lt;Exit name="NotModified" state="ERROR" code="304" empty="true" /&gt;
      &lt;Exit name="BadRequest" state="ERROR" code="400" empty="true" /&gt;
      &lt;Exit name="NotAuthorized" state="ERROR" code="401" empty="true" /&gt;
      &lt;Exit name="NotAllowed" state="ERROR" code="403" empty="true" /&gt;
      &lt;Exit name="Teapot" state="SUCCESS" code="418" /&gt;
      &lt;Exit name="ServerError" state="ERROR" code="500" /&gt;
   &lt;/Exits&gt;
 </pre></code>
    
    
      
    
    
    
    
    
  
  
    
      The Exit of a Pipeline that specifies the end state of a PipeLine. The state is returned to the receiver as well as
 the optionally specified http status code. Each Exit should have a unique name. See Exits
 for examples.
 <br/><br/>
 When a Pipeline doesn't have an Exits element configured it will be initialized with one Exit having name READY and
 state SUCCESS.
 <br/><br/>
 The name of an Exit can be referenced by the <code>path</code> attribute of a Forward within a Pipe.
    
    
      
        The name of the Exit that can be referenced by a PipeForward's <code>path</code> attribute. When a Pipeline doesn't have an Exits
 element configured it will be initialized with one Exit having name READY (and state SUCCESS)
      
    
    
      
        The state of the Pipeline that is returned to the Receiver for this Exit. When a Pipeline doesn't have an Exits
 element configured it will be initialized with one Exit having state SUCCESS (and name READY)
      
      
        
      
    
    
      
        HTTP statusCode e.g. <code>500</code> Default: 200
      
    
    
      
        Configures the responseRoot in the OpenAPI schema for this exit. If not set, the responseRoot value of the validator will be used. If that contains multiple (comma separated) values, the first will be used for the exits with state <code>SUCCESS</code>, the last for the other exits.
      
    
    
      
        If using RestListener and set to <code>true</code>, this removes the output and shows a blank page, the output is still logged in the ladybug testtool Default: <code>false</code>
      
    
    
      
        If set to <code>true</code>, the output will not be wrapped by the OutputWrapper. Default: <code>false</code>
      
    
    
      
        If set to <code>true</code>, the output will not be validated or transformed by the validator. Default: <code>false</code>
      
    
    
    
    
    
  
  
    
      Optional element in a pipeline. Global forwards that will be added to every pipe, when the forward name has not been explicitly set.
 For example the <code>&lt;forward name="exception" path="error_exception" /&gt;</code>, which will add the '<code>exception</code>' forward to every pipe in the pipeline.
    
    
      
    
    
    
    
    
  
  
    
      Container for jobs that are scheduled for periodic execution.
    
    
      
    
    
    
    
    
  
  
    
      Cleans up a directory.
    
    
      
        directory to be cleaned up
      
    
    
      
        Minimum amount of time (with suffix 'd', 'h', 'm' or 's') that must have passed before a file will be deleted.
 You may only use one suffix! Default: 30d
      
    
    
      
        when <code>true</code>, files in subdirectories will be deleted, too Default: false
      
    
    
      
        when <code>true</code>, empty subdirectories will be deleted, too Default: false
      
    
    
      
        when set <code>true</code>, send warnings to logging and console about not existing directories Default: true
      
    
    
    
    
    
  
  
    
      
    
    
    
    
    
  
  
    
      Singleton that has the different jmsRealms.<br/>
 Typical use: JmsRealmFactory.getInstance().&lt;method to execute&gt;
 <br/>
    
    
      
    
    
    
    
    
  
  
    
      A JmsRealm is a definition of a JMS provider, and is kind of a utility
 class to prevent the tedeous work of repeatedly defining all parameters
 to connect to a queue or topic.
 <br/>
 This class is not an extension of JNDIBase, which would be logical, because
 in the JMSBase class the function PropertyUtils.copyProperties is used, which cannot
 handle this.
    
    
      
        Includes another realm into this one
      
    
    
      
        Set the name of this realm<br/>
      
    
    
      
        Set the name of the QueueConnectionFactory<br/>
      
    
    
      
        Set the name of the TopicConnectionFactory<br/>
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
      Manager for Monitoring.
    
    
      
      
    
    
    
    
    
  
  
    
      <p>Example configuration:</p>
 <pre><code>
 {@literal
 <monitor name="Receiver Shutdown" destinations="MONITOR_LOG">
    <trigger className="org.frankframework.monitoring.Alarm" severity="WARNING">
        <event>Receiver Shutdown</event>
    </trigger>
    <trigger className="org.frankframework.monitoring.Clearing" severity="WARNING">
        <event>Receiver Shutdown</event>
    </trigger>
 </monitor>
 }

 </code></pre>
    
    
      
    
    
    
      
        The functional name of the object.
      
    
    
    
    
      
        
      
    
    
      
        
      
    
    
    
    
    
  
  
    
      Filter on Adapters, used by Triggers.
    
    
      
    
    
      
        Set the name of the Adapter that this AdapterFilter filters on.
      
    
    
    
    
    
  
  
    
      
      
    
    
    
    
    
  
  
    
    
    
  
  
    
      
      
      
      
      
      
      
      
    
  
  
    
      
        
          
            
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          
            
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        Name of the parameter
      
    
    
    
    
    
    
      
        URL to a stylesheet that wil be applied to the contents of the message or the value of the session-variable.
      
    
    
      
        the XPath expression to extract the parameter value from the (xml formatted) input or session-variable.
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
    
      
        Namespace definitions for xpathExpression. Must be in the form of a comma or space separated list of
 <code>prefix=namespaceuri</code>-definitions. One entry can be without a prefix, that will define the default namespace.
      
    
    
      
        When set <code>true</code> namespaces (and prefixes) in the input message are removed before the stylesheet/xpathExpression is executed Default: <code>false</code>
      
    
    
    
    
    
      
        Alias used to obtain username and password, used when a <code>pattern</code> containing {username} or {password} is specified
      
    
    
      
        Default username that is used when a <code>pattern</code> containing {username} is specified
      
    
    
      
        Default password that is used when a <code>pattern</code> containing {password} is specified
      
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        Used in combination with types <code>DATE</code>, <code>TIME</code>, <code>DATETIME</code> and <code>TIMESTAMP</code> to parse the raw parameter string data into an object of the respective type Default: depends on type
      
    
    
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Separate the integer part from the fractional part of a number. Default: system default
      
    
    
      
        In the United States, the comma is typically used for the grouping separator; however, several publication standards follow international standards in using either a space or a thin space character. Default: system default
      
    
    
      
        Used in combination with type <code>number</code>; if set and the value of the parameter exceeds this maximum value, this maximum value is taken
      
    
    
      
        Used in combination with type <code>number</code>; if set and the value of the parameter falls short of this minimum value, this minimum value is taken
      
    
  
  
    
    
  
  
    
      
        
          Listener that allows a Receiver to receive messages as a REST webservice.
 Prepends the configured URI pattern with <code>api/</code>. The structure of REST messages is described
 by OpenAPI specifications. The Frank!Framework generates an OpenAPI specification for each ApiListener and
 for all ApiListeners in all configurations combined. You can
 find them in the Frank!Console under main menu item Webservices, heading Available ApiListeners.
 <p>
 The generated OpenAPI specifications have <code>servers</code> and <code>paths</code> objects and
 therefore they document the full URLs of the provided services.
 <p>
 It is possible to automatically generate eTags over the listener result. This can be controlled by globally 
 setting the property <code>api.etag.enabled</code> or by setting the attribute <code>updateEtag="true"</code>.
 When enabled the listener will respond to the <code>If-Match</code>, <code>If-None-Match</code> headers and may return status code 304.
 <p>
 In order to enable eTags for multiple nodes you must configure Memcached to store the eTags.
 The following properties will need to be set:
 <ul>
 <li><code>etag.cache.server=ip or hostname:port</code></li>
 <li><code>etag.cache.type=memcached</code></li>
 </ul>
 In case authentication, is required the following application properties can be used:
 <ul>
 <li><code>etag.cache.username</code></li>
 <li><code>etag.cache.password</code></li>
 <li><code>etag.cache.authalias</code></li>
 </ul>
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          ESB (Enterprise Service Bus) extension of JmsListener.
        
        
          
            
              
            
          
        
      
      
        
          Microsoft Exchange Implementation of a MailListener.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          FxF extension of EsbJmsListener.

 <p><b>Configuration </b><i>(where deviating from EsbJmsListener)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>destinationName</td><td>name of the JMS destination (queue or topic) to use</td><td>"jms/FileTransferAction"</td></tr>
 <tr><td>jmsRealm</td><td>&nbsp;</td><td>"qcf_tibco_p2p_ff"</td></tr>
 <tr><td>messageProtocol</td><td>protocol of ESB service to be called. Possible values
 <ul>
   <li>"FF": Fire & Forget protocol</li>
   <li>"RR": Request-Reply protocol</li>
 </ul></td><td>"FF"</td></tr>
 </table></p>
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Use this listener to receive messages from other adapters or a scheduler within the same Frank-application or from other components residing in the same JVM.
 JavaListeners can receive calls made via de ibis-servicedispatcher, which should be located on the JVM classpath to receive calls from other components in the JVM. If you want to call an adapter in the same Frank-application, consider using the IbisLocalSender.
 <br/>
 To understand what this listener does exactly, please remember that the Frank!Framework is a Java application.
 The JavaListener listens to Java method calls. You can issue Java method calls using a IbisJavaSender (external call)
 or IbisLocalSender (internal call).
 For more information see the ibis-servicedispatcher project.
        
        
          
            
              
            
          
        
      
      
        
          JdbcListener base class.
        
        
          
            
              
            
          
        
      
      
        
          Database Listener that operates on a table having at least a key and a status field.
        
        
          
            
              
            
          
        
      
      
        
          A true multi-threaded Listener-class.
 <br/>

 Since version 4.1, Ibis supports distributed transactions using the XA-protocol. This feature is controlled by the
 transacted attribute. If this is set to <code>true</code>, received messages are
 committed or rolled back, possibly together with other actions, by the receiver or the pipeline.
 In case of a failure, all actions within the transaction are rolled back.

 <p><b>Using jmsTransacted and acknowledgement</b><br/>
 If jmsTransacted is set <code>true</code>: it should ensure that a message is received and processed on a both or nothing basis.
 IBIS will commit the the message, otherwise perform rollback. However using jmsTransacted, IBIS does not bring transactions within
 the adapters under transaction control, compromising the idea of atomic transactions. In the roll-back situation messages sent to
 other destinations within the Pipeline are NOT rolled back if jmsTransacted is set <code>true</code>! In the failure situation the
 message is therefore completely processed, and the roll back does not mean that the processing is rolled back! To obtain the correct
 (transactional) behaviour, transacted should be used instead of listener.transacted.
 </p><p>
 Setting listener.acknowledgeMode to "auto" means that messages are allways acknowledged (removed from
 the queue, regardless of what the status of the Adapter is. "client" means that the message will only be removed from the queue
 when the state of the Adapter equals the success state for committing.
 The "dups" mode instructs the session to lazily acknowledge the delivery of the messages. This is likely to result in the
 delivery of duplicate messages if JMS fails. It should be used by consumers who are tolerant in processing duplicate messages.
 In cases where the client is tolerant of duplicate messages, some enhancement in performance can be achieved using this mode,
 since a session has lower overhead in trying to prevent duplicate messages.
 </p>
 <p>The setting for listener.acknowledgeMode will only be processed if
 the setting for listener.transacted as well as for
 listener.jmsTransacted is false.</p>

 <p>If useReplyTo is set and a replyTo-destination is
 specified in the message, the JmsListener sends the result of the processing
 in the pipeline to this destination. Otherwise the result is sent using the (optionally)
 specified, that in turn sends the message to
 whatever it is configured to.</p>

 <p>You can add parameters to the JmsListener, the values will be added as Headers to the JMS response message.</p>

 <p><b>Notice:</b> the JmsListener is ONLY capable of processing
 jakarta.jms.TextMessages and jakarta.jms.BytesMessage<br/><br/>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Read messages from the IBISSTORE database table previously stored by a
 MessageStoreSender.

 Example configuration:
 <code><pre>
	&lt;Receiver
		name="03 MessageStoreReceiver"
		numThreads="4"
		transactionAttribute="Required"
		pollInterval="1"
		&gt;
		&lt;MessageStoreListener
			name="03 MessageStoreListener"
			slotId="${instance.name}/TestMessageStore"
			statusValueInProcess="I"
		/&gt;
	&lt;/Receiver&gt;
 </pre></code>

 If you have a <code>MessageStoreListener</code>, failed messages are automatically kept in database
 table IBISSTORE. Messages are also kept after successful processing. The state of a message
 is distinguished by the <code>TYPE</code> field, as follows:
 <ul>
 <li> <code>M</code>: The message is new. From a functional perspective, it is in the message store.
 <li> <code>E</code>: There was an error processing the message. From a functional perspective, it is in the error store.
 <li> <code>A</code>: The message was successfully processed. From a functional perspective, it is in the message log.
 </ul>
 Another way to say this is that a <code>MessageStoreListener</code> acts as a message log and as an error store.
 If you have it, you do not need to add
 a <code>JdbcErrorStorage</code> or <code>JdbcMessageLog</code> within the same receiver.
 <br/><br/>
 See /IAF_util/IAF_DatabaseChangelog.xml for the structure of table IBISSTORE.
        
        
          
            
              
            
          
        
      
      
        
          MQTT listener which will connect to a broker and subscribe to a topic.

 Links to <a href="https://www.eclipse.org/paho/files/javadoc" target="_blank">https://www.eclipse.org/paho/files/javadoc</a> are opened in a new window/tab because the response from eclipse.org contains header X-Frame-Options:SAMEORIGIN which will make the browser refuse to open the link inside this frame.
        
        
          
            
              
            
          
        
      
      
        
          A true multi-threaded Listener-class.
 <br/>

 Since version 4.1, Ibis supports distributed transactions using the XA-protocol. This feature is controlled by the
 transacted attribute. If this is set to <code>true</code>, received messages are
 committed or rolled back, possibly together with other actions, by the receiver or the pipeline.
 In case of a failure, all actions within the transaction are rolled back.

 <p><b>Using jmsTransacted and acknowledgement</b><br/>
 If jmsTransacted is set <code>true</code>: it should ensure that a message is received and processed on a both or nothing basis.
 IBIS will commit the the message, otherwise perform rollback. However using jmsTransacted, IBIS does not bring transactions within
 the adapters under transaction control, compromising the idea of atomic transactions. In the roll-back situation messages sent to
 other destinations within the Pipeline are NOT rolled back if jmsTransacted is set <code>true</code>! In the failure situation the
 message is therefore completely processed, and the roll back does not mean that the processing is rolled back! To obtain the correct
 (transactional) behaviour, transacted should be used instead of listener.transacted.
<p>
 Setting listener.acknowledgeMode to "auto" means that messages are allways acknowledged (removed from
 the queue, regardless of what the status of the Adapter is. "client" means that the message will only be removed from the queue
 when the state of the Adapter equals the success state.
 The "dups" mode instructs the session to lazily acknowledge the delivery of the messages. This is likely to result in the
 delivery of duplicate messages if JMS fails. It should be used by consumers who are tolerant in processing duplicate messages.
 In cases where the client is tolerant of duplicate messages, some enhancement in performance can be achieved using this mode,
 since a session has lower overhead in trying to prevent duplicate messages.
 </p>
 <p>The setting for listener.acknowledgeMode will only be processed if
 the setting for listener.transacted as well as for
 listener.jmsTransacted is false.</p>

 <p>If useReplyTo is set and a replyTo-destination is
 specified in the message, the JmsListener sends the result of the processing
 in the pipeline to this destination. Otherwise the result is sent using the (optionally)
 specified Sender, that in turn sends the message to
 whatever it is configured to.</p>
 </p>
 <p><b>Notice:</b> the JmsListener is ONLY capable of processing
 <code>jakarta.jms.TextMessage</code>s <br/><br/>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          JMSListener re-implemented as a pushing listener rather than a pulling listener.
 The JMS messages have to come in from an external source: an MDB or a Spring
 message container.

 This version of the <code>JmsListener</code> supports distributed transactions using the XA-protocol.
 No special action is required to have the listener join the transaction.

 <p><b>Using jmsTransacted and acknowledgement</b><br/>
 If jmsTransacted is set <code>true</code>, it should ensure that a message is received and processed on
 a both or nothing basis. IBIS will commit the the message, otherwise perform rollback. However, using
 jmsTransacted, IBIS does not bring transactions within the adapters under transaction control,
 compromising the idea of atomic transactions. In the roll-back situation messages sent to other
 destinations within the Pipeline are NOT rolled back if jmsTransacted is set <code>true</code>! In
 the failure situation the message is therefore completely processed, and the roll back does not mean
 that the processing is rolled back! To obtain the correct (transactional) behaviour, set
 <code>transacted</code>="true" for the enclosing Receiver. Do not use jmsTransacted for any new situation.

 </p><p>
 Setting listener.acknowledgeMode to "auto" means that messages are allways acknowledged (removed from
 the queue, regardless of what the status of the Adapter is. "client" means that the message will only be removed from the queue
 when the state of the Adapter equals the success state.
 The "dups" mode instructs the session to lazily acknowledge the delivery of the messages. This is likely to result in the
 delivery of duplicate messages if JMS fails. It should be used by consumers who are tolerant in processing duplicate messages.
 In cases where the client is tolerant of duplicate messages, some enhancement in performance can be achieved using this mode,
 since a session has lower overhead in trying to prevent duplicate messages.
 </p>
 <p>The setting for listener.acknowledgeMode will only be processed if
 the setting for listener.transacted as well as for
 listener.jmsTransacted is false.</p>

 <p>If useReplyTo is set and a replyTo-destination is
 specified in the message, the JmsListener sends the result of the processing
 in the pipeline to this destination. Otherwise the result is sent using the (optionally)
 specified Sender, that in turn sends the message to
 whatever it is configured to.</p>

 <p><b>Notice:</b> the JmsListener is ONLY capable of processing
 jakarta.jms.TextMessages and jakarta.jms.BytesMessage<br/><br/>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Listener that allows a Receiver to receive messages as a REST webservice.
 Prepends the configured URI pattern with <code>rest/</code>. When you are writing a new Frank config, you are recommended
 to use an ApiListener instead. You can find all serviced URI patterns
 in the Frank!Console: main menu item Webservice, heading Available REST Services.

 <p>
 Note:
 Servlets' multipart configuration expects a Content-Type of <code>multipart/form-data</code> (see http://docs.oracle.com/javaee/6/api/javax/servlet/annotation/MultipartConfig.html).
 So do not use other multipart content types like <code>multipart/related</code>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Database Listener that returns a count of messages available, but does not perform any locking or
 other management of processing messages in parallel.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Listener that allows a Receiver to receive messages as a SOAP webservice.
 The structure of the SOAP messages is expressed in a WSDL (Web Services Description Language) document.
 The Frank!Framework generates a WSDL document for each adapter that contains WebServiceListeners. You can
 find these documents in the Frank!Console under main menu item Webservices, heading Available WSDL's.
 The WSDL documents that we generate document how the SOAP services can be accessed. In particular, the
 URL of a SOAP service can be found in an XML element <code>&lt;soap:address&gt;</code> with
 <code>soap</code> pointing to namespace <code>http://schemas.xmlsoap.org/wsdl/soap/</code>.

 <br/>If <code>address</code> is set, then for each request:<ul>
 <li>MIME headers are described in a 'mimeHeaders'-XML stored under session key 'mimeHeaders'</li>
 <li>Attachments present in the request are described by an 'attachments'-XML stored under session key 'attachments'</li>
 <li>SOAP protocol is stored under a session key 'soapProtocol'</li>
 <li>SOAP action is stored under a session key 'SOAPAction'</li>
 </ul>
 and for each response a multipart message is constructed if a 'multipart'-XML is provided in sessionKey specified by multipartXmlSessionKey.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
  
  
    
      
        HTTP method to listen to Default: GET
      
      
        
      
    
    
      
        HTTP method(s) to listen to. Inside XML Configurations: for multiple values, use a comma as separator. Default: GET
      
      
        
      
    
    
      
        URI pattern to register this listener on, eq. <code>/my-listener/{something}/here</code>
      
    
    
      
        The required contentType on requests, if it doesn't match a <code>415 Unsupported Media Type</code> is replied. Default: ANY
      
      
        
      
    
    
      
        The specified contentType on response. When <code>ANY</code> the response will determine the content-type when it's known and will never calculate it. If no match is found <code>*&#47;*</code> will be used.
 When <code>DETECT</code> the framework attempts to detect the MimeType (as well as charset) when not known. Default: ANY
      
      
        
      
    
    
      
        The specified character encoding on the response contentType header. NULL or empty
 values will be ignored. Default: UTF-8
      
    
    
      
        Automatically generate and validate etags Default: <code>false</code>, can be changed by setting the property <code>api.etag.enabled</code>.
      
    
    
      
        Enables security for this listener. If you wish to use the application servers authorization roles [AUTHROLE], you need to enable them globally for all ApiListeners with the <code>servlet.ApiListenerServlet.securityRoles=IbisTester,IbisWebService</code> property Default: <code>NONE</code>
      
      
        
      
    
    
      
        Only active when AuthenticationMethod=AUTHROLE. Comma separated list of authorization roles which are granted for this service, eq. <code>IbisTester,IbisObserver</code>
      
    
    
      
        Specify the form-part you wish to enter the pipeline Default: name of the first form-part
      
    
    
      
        Name of the header which contains the Message-Id. Default: Message-Id
      
    
    
      
        Name of the header which contains the Correlation-Id. Default: Correlation-Id
      
    
    
      
        Unique string used to identify the operation. The id MUST be unique among all operations described in the OpenApi schema.
      
    
    
      
        Comma separated list of parameters passed as http header. Parameters will be stored in 'headers' sessionkey.
      
    
    
      
        Session key that provides the <code>Content-Disposition</code> header in the response
      
    
    
      
        Issuer to validate JWT
      
    
    
      
        Keysource URL to validate JWT
      
    
    
      
        Header to extract JWT from Default: <code>Authorization</code>
      
    
    
      
        Comma separated list of required claims
      
    
    
      
        Comma separated key value pairs to exactly match with JWT payload. e.g. <code>sub=UnitTest, aud=test</code>
      
    
    
      
        Comma separated key value pairs to one-of match with JWT payload. e.g. <code>appid=a,appid=b</code>
      
    
    
      
        Claim name which specifies the role (maps to <code>IsUserInRolePipe</code>)
      
    
    
      
        Claim name which specifies the principal name (maps to <code>GetPrincipalPipe</code>)
      
    
  
  
    
    
  
  
    
      
        Name of the listener as known to the adapter
      
    
    
    
    
  
  
    
    
  
  
    
  
  
    
    
  
  
    
    
  
  
    
      
        Optional base folder, that serves as root for all other folders
      
    
  
  
    
    
  
  
    
      
        Name of the listener
      
    
    
    
    
    
    
    
    
    
    
    
    
      
        Determines the contents of the message that is sent to the pipeline. Can be 'name', for the filename, 'path', for the full file path, 'contents' for the contents of the file, 'info' for file information. For any other value, the attributes of the file are searched and used Default: path
      
    
    
    
    
    
    
    
    
    
      
        Charset to be used for extracting the contents
      
    
    
      
        OutputFormat of message for messageType=info Default: XML
      
      
        
      
    
    
    
  
  
    
    
    
  
  
    
      
        protocol of ESB service to be called
      
      
        
      
    
    
      
        if true, all JMS properties in the request starting with "ae_" are copied to the reply. Default: false
      
    
    
      
        if messageProtocol=RR, default value is: true Default: false
      
    
    
      
        if messageProtocol=FF, default value is: false Default: true
      
    
    
      
        Comma separated list of all XPath keys that need to be logged. (overrides <code>msg.log.keys</code> property)
      
    
  
  
    
    
    
      
        Receive timeout <i>in milliseconds</i> as specified by the JMS API, see https://docs.oracle.com/javaee/7/api/javax/jms/MessageConsumer.html#receive-long- Default: 1000
      
    
    
    
    
    
    
    
      
        If <code>true</code>, messages sent are put in a SOAP envelope Default: false
      
    
    
    
    
    
    
    
    
    
    
    
    
      
        Controls whether messages are send under transaction control.
 If set <code>true</code>, messages are committed or rolled back under control of an XA-transaction. Default: false
      
    
    
    
    
    
    
    
      
        Alias used to obtain credentials for authentication to JMS server
      
    
    
    
  
  
    
      
    
  
  
    
      
        By default, the JmsListener takes the Correlation-ID (if present) as the ID that has to be used as Correlation-ID of the reply.
 When set to <code>true</code>, the messageID is used as Correlation-ID of the reply. Default: false
      
    
    
      
        Receive timeout <i>in milliseconds</i> as specified by the JMS API, see https://docs.oracle.com/javaee/7/api/javax/jms/MessageConsumer.html#receive-long- Default: 1000
      
    
    
      
        Flag if reply-to queue from the request message should be used or not. Default: true
      
    
    
    
    
    
    
    
      
        If <code>true</code>, messages sent are put in a SOAP envelope Default: false
      
    
    
    
    
    
  
  
    
    
  
  
    
    
  
  
    
    
      
        Name of the JMS destination (queue or topic) to use
      
    
    
    
    
    
    
    
      
        Controls whether messages are send under transaction control.
 If set <code>true</code>, messages are committed or rolled back under control of an XA-transaction. Default: false
      
    
    
    
    
    
    
    
      
        Alias used to obtain credentials for authentication to JMS server
      
    
    
  
  
    
    
  
  
    
    
  
  
    
    
    
    
    
    
    
      
        loads JNDI (and other) properties from a JmsRealm
      
    
    
    
    
    
    
      
        Name of the sender or the listener
      
    
    
    
  
  
    
    
    
  
  
    
      
        Name of the JMS destination (queue or topic) to use
      
    
    
      
        
      
    
    
      
        Interval <i>in milliseconds</i> for the poll guard to check whether a successful poll was done by the receive
 (https://docs.oracle.com/javaee/7/api/javax/jms/messageconsumer.html#receive-long-) since last check. If polling has stopped this will be logged
 and the listener will be stopped and started in an attempt to workaround problems with polling.
 Polling might stop due to bugs in the JMS driver/implementation which should be fixed by the supplier. As the poll time includes reading
 and processing of the message no successful poll might be registered since the last check when message processing takes a long time, hence
 while messages are being processed the check on last successful poll will be skipped. Set to -1 to disable. Default: ten times the specified timeout
      
    
  
  
    
    
    
    
    
    
    
    
    
      
        Controls whether messages are send under transaction control.
 If set <code>true</code>, messages are committed or rolled back under control of an XA-transaction. Default: false
      
    
    
    
    
    
    
    
      
        Alias used to obtain credentials for authentication to JMS server
      
    
    
    
  
  
    
    
  
  
    
      
        The mail address of the mailbox connected to (also used for auto discovery)
      
    
    
      
        Url of the Exchange server. Set to e.g. https://outlook.office365.com/EWS/Exchange.asmx to speed up startup, leave empty to use autodiscovery
      
    
    
      
        Client ID that represents a registered application in Azure AD which could be found at Azure AD -> App Registrations -> MyApp -> Overview.
      
    
    
      
        Client secret that belongs to registered application in Azure AD which could be found at Azure AD -> App Registrations -> MyApp -> Certificates and Secrets
      
    
    
      
        Tenant ID that represents the tenant in which the registered application exists within Azure AD which could be found at Azure AD -> App Registrations -> MyApp -> Overview.
      
    
    
      
        Alias used to obtain client ID and secret or username and password for authentication to Exchange mail server.
 If the attribute tenantId is empty, the deprecated Basic Authentication method is used.
 If the attribute tenantId is not empty, the username and password are treated as the client ID and secret.
      
    
    
      
        Folder (subfolder of root or of inbox) to look for mails. If empty, the inbox folder is used
      
    
    
      
        If empty, all mails are retrieved. If set to <code>NDR</code> only Non-Delivery Report mails ('bounces') are retrieved
      
    
    
      
        Comma separated list of fields to try as response address Default: replyTo,from,sender,Return-Path
      
    
    
      
        proxy host
      
    
    
      
        proxy port Default: 8080
      
    
    
      
        proxy username
      
    
    
      
        proxy password
      
    
    
      
        proxy authAlias
      
    
    
      
        proxy domain
      
    
    
      
        Separator character used when working with multiple mailboxes, specified before the separator in the object name <code>[email protected]|My sub folder</code> or <code>[email protected]|AAMkADljZDMxYzIzLTFlMjYtNGY4Mi1hM2Y1LTc2MjE5ZjIyZmMyNABGAAAAAAAu/9EmV5M6QokBRZwID1Q6BwDXQXY+F44hRbDfTB9v8jRfAAAEUqUVAADXQXY+F44hRbDfTB9v8jRfAAKA4F+pAAA=</code>.
 Please consider when moving emails across mailboxes that there will be a null value returned instead of the newly created identifier. Default: |
      
    
    
      
        Resource url to keystore or certificate. If none specified, the JVMs default keystore will be used.
      
    
    
      
        Type of keystore Default: pkcs12
      
      
        
      
    
    
      
        Authentication alias used to obtain keystore password
      
    
    
      
        Default password to access keystore
      
    
    
      
        Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        Alias to obtain specific certificate or key in keystore
      
    
    
      
        Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Resource url to truststore. If none specified, the JVMs default truststore will be used.
      
    
    
      
        Type of truststore Default: jks
      
      
        
      
    
    
      
        Authentication alias used to obtain truststore password
      
    
    
      
        Default password to access truststore
      
    
    
      
        Trust manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
      
    
    
      
        If <code>true</code>, self signed certificates are accepted Default: false
      
    
    
      
        If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
      
    
  
  
    
    
  
  
    
      
        Determines the contents of the message that is sent to the Pipeline. can be one of:
 <ul>
 <li><code>email</code>, for an XML containing most relevant information, except the body and the attachments</li>
 <li><code>contents</code>, for the body of the message</li>
 <li><code>mime</code>, for the MIME contents of the message</li>
 <li><code>name</code> or <code>path</code>, for an internal handle of mail message, that can be used by a related MailFileSystemSender</li>
 <li>the key of any header present in the message context</li>
 </ul> Default: email
      
    
  
  
    
    
      
        Name of the listener
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
      
        Charset to be used for extracting the contents
      
    
    
      
        OutputFormat of message for messageType=info Default: XML
      
      
        
      
    
    
    
  
  
    
    
  
  
    
      
        pathname of the file or directory to list. Default: Home folder of the ftp user
      
    
    
      
        Name or ip address of remote host
      
    
    
      
        Port number of remote host Default: 21
      
    
    
      
        Name of the alias to obtain credentials to authenticatie on remote server
      
    
    
      
        Name of the user to authenticatie on remote server
      
    
    
      
        Password to authenticatie on remote server
      
    
    
      
        Proxy hostname
      
    
    
      
        Proxy port Default: 1080
      
    
    
      
        FTP protocol to use Default: FTP
      
      
        
      
    
    
      
        
      
    
    
      
        If <code>true</code>, passive ftp is used: before data is sent, a pasv command is issued, and the connection is set up by the server Default: true
      
    
    
      
        (ftps) Transport type in case of sftp Default: SOCKS5
      
      
        
      
    
    
      
        (ftps) Resource url to keystore or certificate to be used for authentication. If none specified, the JVMs default keystore will be used.
      
    
    
      
        (ftps) Type of keystore Default: pkcs12
      
      
        
      
    
    
      
        (ftps) Authentication alias used to obtain keystore password
      
    
    
      
        (ftps) Default password to access keystore
      
    
    
      
        (ftps) Alias to obtain specific certificate or key in keystore
      
    
    
      
        (ftps) Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        (ftps) Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        (ftps) Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        (ftps) Resource url to truststore to be used for authenticating peer. If none specified, the JVMs default truststore will be used.
      
    
    
      
        (ftps) Type of truststore Default: jks
      
      
        
      
    
    
      
        (ftps) Authentication alias used to obtain truststore password
      
    
    
      
        (ftps) Default password to access truststore
      
    
    
      
        (ftps) Trust manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        (ftps) If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
      
    
    
      
        (ftps) If <code>true</code>, self signed certificates are accepted Default: false
      
    
    
      
        (ftps) If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
      
    
    
      
        Sets the <code>Data Channel Protection Level</code>. Default: C
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        name of the session key to store the name of the received file in Default: fxfFile
      
    
    
      
        If set to <code>true</code>, the received file is moved after being processed Default: true
      
    
    
      
        (only used when <code>moveProcessedFile=true</code>) <b>sibling</b> directory (related to the parent directory of the file to process) where files are stored after being processed Default: processed
      
    
    
      
        (only used when <code>moveProcessedFile=true</code>) when set to <code>true</code>, the directory to move processed files in is created if it does not exist Default: false
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        The hostname of the IMAP server
      
    
    
      
        The port of the IMAP server Default: 993
      
    
    
      
        Alias used to obtain accessToken or username and password for authentication to Exchange mail server.
 If the alias refers to a combination of a username and a password, the deprecated Basic Authentication method is used.
 If the alias refers to a password without a username, the password is treated as the accessToken.
      
    
    
      
        Username for authentication to mail server.
      
    
    
      
        Password for authentication to mail server.
      
    
    
      
        Folder (subfolder of root or of inbox) to look for mails. If empty, the inbox folder is used
      
    
    
      
        Comma separated list of fields to try as response address Default: replyTo,from,sender,Return-Path
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        Internal name of the listener, as known to the adapter. An IbisLocalSender refers to this name in its <code>javaListener</code>-attribute.
      
    
    
      
        External Name of the listener. An IbisJavaSender refers to this name in its <code>serviceName</code>-attribute.
      
    
    
      
        Comma separated list of keys of session variables that should be returned to caller, for correct results as well as for erroneous results.
 If not set (not even to an empty value), all session keys can be returned. Default: all session keys can be returned
      
    
    
      
        Should the JavaListener throw a ListenerException when it occurs or return an error message Default: true
      
    
    
      
        If <code>true</code>, the WSDL of the service provided by this listener will available for download Default: false
      
    
    
    
  
  
    
    
  
  
    
    
    
      
        Primary key field of the table, used to identify and differentiate messages.
 <b>NB: there should be an index on this field!</b>
      
    
    
      
        Field containing the message data Default: <i>same as keyField</i>
      
    
    
      
        Type of the field containing the message data Default: <i>String</i>
      
      
        
      
    
    
      
        Field containing the <code>messageId</code>.
 <b>NB: If this column is not set the default (primary key) keyField will be used as messageId!</b> Default: <i>same as keyField</i>
      
    
    
      
        Field containing the <code>correlationId</code>.
 <b>NB: If this column is not set, the <code>messageId</code> and <code>correlationId</code> will be the same!</b> Default: <i>same as messageIdField</i>
      
    
    
      
        If set, the SQL dialect in which the queries are written and should be translated from to the actual SQL dialect
      
    
    
      
        Controls whether BLOB is considered stored compressed in the database Default: true
      
    
    
      
        Controls automatically whether blobdata is stored compressed and/or serialized in the database. N.B. When set true, then the BLOB will be converted into a string Default: false
      
    
    
  
  
    
    
  
  
    
    
  
  
    
    
      
        Authentication alias used to authenticate when connecting to database
      
    
    
      
        User name for authentication when connecting to database, when none found from <code>authAlias</code>
      
    
    
      
        Password for authentication when connecting to database, when none found from <code>authAlias</code>
      
    
    
      
        controls the use of transactions
      
    
    
  
  
    
    
    
    
    
    
    
    
    
    
    
    
      
        Name of the sender or the listener
      
    
    
    
  
  
    
    
  
  
    
      
        Name of the table to be used
      
    
    
    
      
        Field containing the status of the message. 
 <b>NB: For optimal performance, an index should exist that starts with this field, followed by all fields that are used with a fixed value in the select condition, and end with the <code>orderField</code>.
      
    
    
    
      
        (optional) Field used to store the date and time of the last change of the <code>statusField</code>
      
    
    
      
        (optional) Field used to store the reason of the last change of the <code>statusField</code>
      
    
    
    
      
        (optional) Value of <code>statusField</code> indicating row is available to be processed. If not specified, any row not having any of the other status values is considered available.
      
    
    
      
        Value of <code>statusField</code> indicating the processing of the row resulted in an error
      
    
    
      
        Value of status field indicating row is processed OK
      
    
    
      
        Value of <code>statusField</code> indicating is being processed. Can be left emtpy if database has <code>SKIP LOCKED</code> functionality and the <code>transactionAttribute</code> of the <code>Receiver</code> can be (and is) set to <code>Required</code> or <code>RequiresNew</code>.
      
    
    
      
        Value of <code>statusField</code> indicating message is on Hold, temporarily
      
    
    
  
  
    
    
  
  
    
    
    
  
  
    
    
  
  
    
      
        Identifier for this service
      
    
    
      
        Comma separated list of sessionKey's to be read together with the message. Please note: corresponding MessageStoreSender must have the same value for this attribute
      
    
    
      
        Name of the table to be used Default: IBISSTORE
      
    
    
      
        Primary key field of the table, used to identify and differentiate messages.
 <b>NB: there should be an index on this field!</b> Default: MESSAGEKEY
      
    
    
      
        Field containing the message data Default: MESSAGE
      
    
    
      
        Field containing the <code>messageId</code>.
 <b>NB: If this column is not set the default (primary key) keyField will be used as messageId!</b> Default: MESSAGEID
      
    
    
      
        Field containing the <code>correlationId</code>.
 <b>NB: If this column is not set, the <code>messageId</code> and <code>correlationId</code> will be the same!</b> Default: CORRELATIONID
      
    
    
      
        Type of the field containing the message data Default: BLOB
      
      
        
      
    
    
      
        Controls automatically whether blobdata is stored compressed and/or serialized in the database. N.B. When set true, then the BLOB will be converted into a string Default: <code>true</code>
      
    
    
      
        Field containing the status of the message. 
 <b>NB: For optimal performance, an index should exist that starts with this field, followed by all fields that are used with a fixed value in the select condition, and end with the <code>orderField</code>. Default: TYPE
      
    
    
      
        (optional) Field used to store the date and time of the last change of the <code>statusField</code> Default: MESSAGEDATE
      
    
    
      
        (optional) Field used to store the reason of the last change of the <code>statusField</code> Default: COMMENTS
      
    
    
      
        Value of statusField indicating row is available to be processed. If set empty, any row not having any of the other status values is considered available. Default: <code>M</code>
      
    
    
      
        Value of status field indicating is being processed. Set to <code>I</code> if database has no SKIP LOCKED functionality, the Receiver cannot be set to <code>Required</code> or <code>RequiresNew</code>, or to support programmatic retry.
      
    
    
      
        Value of <code>statusField</code> indicating the processing of the row resulted in an error Default: <code>E</code>
      
    
    
      
        Value of status field indicating row is processed OK Default: <code>A</code>
      
    
    
      
        Value of status field indicating message is on Hold, temporarily. If required, suggested value is <code>H</code>.
      
    
    
      
        Move to messageLog after processing, as the message is already stored in the ibisstore only some fields need to be updated. When set <code>false</code>, messages are deleted after being processed Default: <code>true</code>
      
    
  
  
    
    
    
    
    
    
    
    
      
        If set, the SQL dialect in which the queries are written and should be translated from to the actual SQL dialect
      
    
    
      
        Controls whether BLOB is considered stored compressed in the database Default: true
      
    
    
    
  
  
    
    
  
  
    
    
  
  
    
      
        The functional name of the object.
      
    
    
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttClient.html#MqttClient-java.lang.String-java.lang.String-org.eclipse.paho.client.mqttv3.MqttClientPersistence-" target="_blank">MqttClient(java.lang.String serverURI, java.lang.String clientId, MqttClientPersistence persistence)</a>
      
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttClient.html#MqttClient-java.lang.String-java.lang.String-org.eclipse.paho.client.mqttv3.MqttClientPersistence-" target="_blank">MqttClient(java.lang.String serverURI, java.lang.String clientId, MqttClientPersistence persistence)</a>
      
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttClient.html#subscribe-java.lang.String-" target="_blank">MqttClient.subscribe(java.lang.String topicFilter)</a>
      
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttClient.html#MqttClient-java.lang.String-java.lang.String-org.eclipse.paho.client.mqttv3.MqttClientPersistence-" target="_blank">MqttClient(java.lang.String serverURI, java.lang.String clientId, MqttClientPersistence persistence)</a> Default: 2
      
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttConnectOptions.html#setCleanSession-boolean-" target="_blank">MqttConnectOptions.setCleanSession(boolean cleanSession)</a> Default: true
      
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/persist/MqttDefaultFilePersistence.html" target="_blank">MqttDefaultFilePersistence</a> and <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttClient.html" target="_blank">MqttClient</a>
      
    
    
      
        see <a href="https://www.eclipse.org/paho/files/javadoc/org/eclipse/paho/client/mqttv3/MqttConnectOptions.html#setAutomaticReconnect-boolean-" target="_blank">MqttConnectOptions.setAutomaticReconnect(boolean automaticReconnect)</a> (apart from this recover job will also try to recover) Default: true
      
    
    
      
        character encoding of received messages Default: UTF-8
      
    
    
    
    
    
    
  
  
    
    
    
  
  
    
    
  
  
    
      
        Uri pattern to match, the {uri} part in https://mydomain.com/ibis4something/rest/{uri}, where mydomain.com and ibis4something refer to 'your ibis'.
      
    
    
      
        Method (e.g. GET or POST) to match
      
    
    
      
        Key of session variable to store etag
      
    
    
      
        Key of Session variable that determines requested content type, overrides produces
      
    
    
      
        Can be either <code>/rest</code> or <code>/rest-public</code> and must correspond with the available RestListenerServlet path(s).
      
    
    
      
        Comma separated list of authorization roles which are granted for this rest service Default: IbisAdmin,IbisDataAdmin,IbisTester,IbisObserver,IbisWebService
      
    
    
    
    
      
        Indicates whether the parts of a multipart entity should be retrieved and put in session keys. This can only be done once! Default: true
      
    
    
      
        Mediatype (e.g. XML, JSON, TEXT) the RestServiceDispatcher receives as input Default: XML
      
      
        
      
    
    
      
        Mediatype (e.g. XML, JSON, TEXT) the RestServiceDispatcher sends as output, if set to json the ibis will automatically try to convert the xml message Default: XML
      
      
        
      
    
    
      
        If set to true the ibis will automatically validate and process etags Default: false
      
    
    
      
        If set to true the ibis will automatically create an etag Default: false
      
    
    
      
        Uses an JsonPipe to convert the json-input to xml, and xml-output to json.
 Use with caution, a properly configured Input/Output-wrapper can do much more and is more robust! Default: true
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        Hostname of the SMB share.
      
    
    
      
        Port to connect to. Default: 445
      
    
    
      
        Type of the authentication either 'NTLM' or 'SPNEGO'.
 When setting SPNEGO, the host must use the FQDN, and must be registered on the KDC with a valid SPN. Default: SPNEGO
      
      
        
      
    
    
      
        alias used to obtain credentials for the smb share
      
    
    
      
        the smb share username
      
    
    
      
        the smb share password
      
    
    
      
        NTLM only: logon/authentication domain, in case the user account is bound to a domain such as Active Directory.
      
    
    
      
        May not contain '\\' characters. The destination share, aka smb://xxx/yyy share.
      
    
    
      
        SPNEGO only:
 Key Distribution Center, typically hosted on a domain controller.
 Stored in <code>java.security.krb5.kdc</code>
      
    
    
      
        SPNEGO only:
 Kerberos Realm, case sensitive. Typically upper case and the same as the domain name.
 An Active Directory domain acts as a Kerberos Realm.
 Stored in <code>java.security.krb5.realm</code>
      
    
  
  
    
    
  
  
    
    
  
  
    
    
  
  
    
      
        Name of the SapSystem used by this object
      
    
    
      
        Name of the RFC-destination to be registered in the SAP system
      
    
    
      
        The number of connections that should be registered at the gateway Default: 2
      
    
  
  
    
    
      
        Name of the Ibis-object
      
    
    
    
    
    
    
    
    
    
  
  
    
      
        Name of the Ibis-object
      
    
    
      
        Name of the SapSystem used by this object
      
    
    
    
    
    
    
    
    
    
  
  
    
    
  
  
    
      
        Path of the file or directory to start working. Default: Home folder of the sftp user
      
    
    
      
        Name or ip address of remote host
      
    
    
      
        Port number of remote host Default: 21
      
    
    
      
        Name of the alias to obtain credentials to authenticatie on remote server
      
    
    
      
        Name of the user to authenticatie on remote server
      
    
    
      
        Password to authenticatie on remote server
      
    
    
      
        Proxy hostname
      
    
    
      
        Proxy port Default: 1080
      
    
    
      
        alias to obtain credentials to authenticate on proxy
      
    
    
      
        Default user name in case proxy requires authentication
      
    
    
      
        Default password in case proxy requires authentication
      
    
    
      
        Transport type in case of sftp Default: SOCKS5
      
      
        
      
    
    
      
        Optional preferred encryption from client to server for sftp protocol
      
    
    
      
        Optional preferred encryption from server to client for sftp protocol
      
    
    
      
        Path to private key file for sftp authentication
      
    
    
      
        Name of the alias to obtain credentials for passphrase of private key file
      
    
    
      
        Passphrase of private key file
      
    
    
      
        Path to file with knownhosts
      
    
    
      
        Verify the hosts againt the knownhosts file. Default: true
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        count query that returns the number of available records. when there are available records the pipeline is activated
      
    
    
  
  
    
    
  
  
    
    
    
  
  
    
    
  
  
    
      
        If <code>true</code> the SOAP envelope is removed from received messages and a SOAP envelope is added to returned messages (SOAP envelope will not be visible to the pipeline) Default: true
      
    
    
      
        Namespace of the service that is provided by the adapter of this listener.
 If specified, requests posted to https://mydomain.com/ibis4something/servlet/rpcrouter that have this namespace in their body  will be handled by this listener,
 where mydomain.com and ibis4something refer to 'your ibis'.
      
    
    
    
      
        The address to listen to, e.g the part &lt;address&gt; in https://mydomain.com/ibis4something/services/&lt;address&gt;,
 where mydomain.com and ibis4something refer to 'your ibis'.
      
    
    
      
        If set, MTOM is enabled on the SOAP binding
      
    
    
      
        Comma separated list of session keys to hold contents of attachments of the request
      
    
    
      
        Key of session variable that holds the description (name, sessionKey, mimeType) of the parts present in the request. Only used if attachmentSessionKeys are specified Default: multipartXml
      
    
  
  
    
    
  
  
    
      
        
          
            
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          
          
          
          
        
      
      
    
  
  
    
      
        
          General Cache provider.

 N.B. the default values shown can be overridden using properties in appConstants. The property names are found by prefixing the attribute name with <code>cache.default.</code>.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
  
  
    
      
        The maximum number of elements in memory, before they are evicted Default: 100
      
    
    
      
        Either <code>LRU</code>=Least Recent Use,<code>LFU</code>=Least Frequent Use or <code>FIFO</code>=First In - First Out Default: LRU
      
    
    
      
        If <code>true</code>, the elements in the cache are eternal, i.e. never expire Default: false
      
    
    
      
        The amount of time <i>in seconds</i> to live for an element from its creation date Default: 36000
      
    
    
      
        The amount of time <i>in seconds</i> to live for an element from its last accessed or modified date Default: 36000
      
    
    
      
        If <code>true</code>, the elements that are evicted from memory are spooled to disk Default: false
      
    
    
      
        The maximum number of elements on disk, before they are removed Default: 10000
      
    
    
      
        If <code>true</code>, the cache is stored on disk and survives configuration reloads & JVM restarts. Default: false
      
    
    
      
        How often to run the disk store expiry thread Default: 600
      
    
  
  
    
    
  
  
    
      
        name of the cache, will be lowercased Default: <code>&lt;ownerName&gt;</code>_cache
      
    
    
      
        xpath expression to extract cache key from request message
      
    
    
      
        output type of xpath expression to extract cache key from request message Default: text
      
      
        
      
    
    
      
        namespace defintions for keyxpath. must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions
      
    
    
      
        stylesheet to extract cache key from request message. Use in combination with cacheEmptyKeys to inhibit caching for certain groups of request messages
      
    
    
      
        session key to use as input for transformation of request message to key by keyxpath or keystylesheet
      
    
    
      
        controls whether empty keys are used for caching. when set true, cache entries with empty keys can exist. Default: false
      
    
    
      
        xpath expression to extract value to be cached key from response message. Use in combination with cacheEmptyValues to inhibit caching for certain groups of response messages
      
    
    
      
        
      
    
    
      
        namespace defintions for valuexpath. must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions
      
    
    
      
        stylesheet to extract value to be cached from response message
      
    
    
      
        session key to use as input for transformation of response message to cached value by valuexpath or valuestylesheet
      
    
    
      
        controls whether empty values will be cached. when set true, empty cache entries can exist for any key. Default: false
      
    
    
    
  
  
    
      
        
          Domparser om AFM-XML berichten om te zetten in edifactberichten (voor de backoffice).
        
        
          
            
              
            
          
        
      
      
        
          Sender to work with the Amazon S3 Filesystem.
 <p>
     In addition to regular parameters for filesystem senders, it is possible
     to set custom user-metadata on S3 files by prefixing parameter names with
     FileAttribute..
     This prefix will be not be part of the actual metadata property name.
 </p>
 <p>
     The string value of these parameters will be used as value of the custom metadata attribute.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Sender to obtain information from and write to a CMIS application.


 <p>
 When <code>action</code>=<code>get</code> the input (xml string) indicates the id of the document to get. This input is mandatory.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;id&gt;documentId&lt;/id&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>
 <p>
 When <code>action</code>=<code>delete</code> the input (xml string) indicates the id of the document to get. This input is mandatory.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;id&gt;documentId&lt;/id&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>
 <p>
 When <code>action</code>=<code>create</code> the input (xml string) indicates document properties to set. This input is optional.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;name&gt;Offerte&lt;/name&gt;
      &lt;objectTypeId&gt;NNB_Geldlening&lt;/objectTypeId&gt;
      &lt;mediaType&gt;application/pdf&lt;/mediaType&gt;
      &lt;properties&gt;
         &lt;property name="ArrivedAt" type="datetime" formatString="yyyy-MM-dd'T'HH:mm:ss.SSSz"&gt;2014-11-27T16:43:01.268+0100&lt;/property&gt;
         &lt;property name="ArrivedBy"&gt;HDN&lt;/property&gt;
         &lt;property name="DocumentType"&gt;Geldlening&lt;/property&gt;
      &lt;/properties&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>

 <p>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>name</td><td>mandatory property "cmis:name". If not set the sender attribute fileNameSessionKey is used</td><td>"[unknown]"</td></tr>
 <tr><td>objectTypeId</td><td>mandatory property "cmis:objectTypeId"</td><td>"cmis:document"</td></tr>
 <tr><td>mediaType</td><td>the MIME type of the document to store</td><td>"application/octet-stream"</td></tr>
 <tr><td>property</td><td>custom document property to set. Possible attributes:
 <table border="1">
 <tr><th>name</th><th>description</th><th>default</th></tr>
 <tr><td>type</td><td>
 <ul>
 <li><code>string</code>: renders the value</li>
 <li><code>datetime</code>: converts the value to a Date, by default using formatString <code>yyyy-MM-dd HH:mm:ss</code></li>
 </ul>
 </td><td>string</td></tr>
 <tr><td>formatString</td><td>used in combination with <code>datetime</code></td><td>yyyy-MM-dd HH:mm:ss</td></tr>
 </table></td><td>&nbsp;</td></tr>
 </table>
 </p>
 <p>
 When <code>action</code>=<code>find</code> the input (xml string) indicates the query to perform.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;query&gt;
      &lt;statement&gt;select * from cmis:document&lt;/statement&gt;
      &lt;maxItems&gt;10&lt;/maxItems&gt;
      &lt;skipCount&gt;0&lt;/skipCount&gt;
      &lt;searchAllVersions&gt;true&lt;/searchAllVersions&gt;
      &lt;includeAllowableActions&gt;true&lt;/includeAllowableActions&gt;
   &lt;/query&gt;
 </code></pre>
 </p>
 <p>
 When <code>action</code>=<code>update</code> the input (xml string) indicates document properties to update.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;id&gt;123456789&lt;/id&gt;
      &lt;properties&gt;
         &lt;property name="ArrivedAt" type="datetime" formatString="yyyy-MM-dd'T'HH:mm:ss.SSSz"&gt;2014-11-27T16:43:01.268+0100&lt;/property&gt;
         &lt;property name="ArrivedBy"&gt;HDN&lt;/property&gt;
         &lt;property name="DocumentType"&gt;Geldlening&lt;/property&gt;
      &lt;/properties&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>

 <p>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>id</td><td>mandatory property "cmis:objectId" which indicates the document to update</td><td>&nbsp;</td></tr>
 <tr><td>property</td><td>custom document property to update. See <code>action</code>=<code>create</code> for possible attributes</td><td>&nbsp;</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Sender that executes either its input or a fixed line, with all parametervalues appended, as a command.
        
        
          
            
              
            
          
        
      
      
        
          Sender that sleeps for a specified time, which defaults to 5000 msecs.
 Useful for testing purposes.
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that interprets the input message as a query, possibly with attributes.
 Messages are expected to contain sql-text.
        
        
          
            
              
            
          
        
      
      
        
          Echos input to output.
        
        
          
            
              
            
          
        
      
      
        
          ESB (Enterprise Service Bus) extension of JmsSender.
        
        
          
            
              
            
          
        
      
      
        
          Implementation of a FileSystemSender that enables to manipulate messages in an Exchange folder.
        
        
          
            
              
            
          
        
      
      
        
          FileSystem Sender extension to handle Attachments.
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that assumes a fixed query, possibly with attributes.

 <p><b>NOTE:</b> See DB2XMLWriter for ResultSet!</p>
        
        
          
            
              
            
          
        
      
      
        
          FixedResultSender, same behaviour as FixedResultPipe, but now as a ISender.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Sender for the HTTP protocol using HttpMethod. By default, any response code outside the 2xx or 3xx range
 is considered an error and the <code>exception</code> forward of the SenderPipe is followed if present and if there
 is no forward for the specific HTTP status code. Forwards for specific HTTP codes (e.g. "200", "201", ...)
 are returned by this sender, so they are available to the SenderPipe.

 <p><b>Expected message format:</b></p>
 <p>GET methods expect a message looking like this:
 <pre>
    param_name=param_value&another_param_name=another_param_value
 </pre>
 <p>POST AND PUT methods expect a message similar as GET, or looking like this:
 <pre>
   param_name=param_value
   another_param_name=another_param_value
 </pre>

 Note:
 When used as MTOM sender and MTOM receiver doesn't support Content-Transfer-Encoding "base64", messages without line feeds will give an error.
 This can be fixed by setting the Content-Transfer-Encoding in the MTOM sender.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          JMS sender which will add an IMS header to the message and call the MQ specific logic.

 <p>See JmsSender for configuration</p>
        
        
          
            
              
            
          
        
      
      
        
          Posts a message to another IBIS-adapter or application in the same JVM using IbisServiceDispatcher.

 An IbisJavaSender makes a call to a Receiver with a JavaListener
 or any other application in the same JVM that has registered a <code>RequestProcessor</code> with the IbisServiceDispatcher.

 <h4>configuring IbisJavaSender and JavaListener</h4>
 <ul>
   <li>Define a SenderPipe with an IbisJavaSender</li>
   <li>Set the attribute <code>serviceName</code> to <i>yourExternalServiceName</i></li>
 </ul>
 In the Adapter to be called:
 <ul>
   <li>Define a Receiver with a JavaListener</li>
   <li>Set the attribute <code>serviceName</code> to <i>yourExternalServiceName</i></li>
 </ul>
 N.B. Please make sure that the IbisServiceDispatcher-1.4.jar or newer is present on the class path of the server.
        
        
          
            
              
            
          
        
      
      
        
          Posts a message to another IBIS-adapter in the same IBIS instance. If the callee exits with an &lt;<code>exit</code>&gt;
 that has state PipeLine.ExitState#ERROR, an error is considered to happen
 in the caller which means that the <code>exception</code> forward is followed if it is present.
 <p/>
 <p/>
 Returns exit.code as forward name to SenderPipe provided that exit.code can be parsed as integer.
 For example, if the called adapter has an exit state with code
 <code>2</code>, then the SenderPipe supports a forward with name <code>2</code>
 that is followed when the called adapter exits with the mentioned exit. This does not work if the code is for example <code>c2</code>.
 <p/>
 <p/>
 An IbisLocalSender makes a call to a Receiver with either a WebServiceListener
 or a JavaListener.



 <h3>Configuration of the Adapter to be called</h3>
 A call to another Adapter in the same IBIS instance is preferably made using the combination
 of an IbisLocalSender and a JavaListener. If,
 however, a Receiver with a WebServiceListener is already present, that can be used in some cases, too.

 <h4>configuring IbisLocalSender and JavaListener</h4>
 <ul>
   <li>Define a SenderPipe with an IbisLocalSender</li>
   <li>Set the attribute <code>javaListener</code> to <i>yourServiceName</i></li>
   <li>Do not set the attribute <code>serviceName</code></li>
 </ul>
 In the Adapter to be called:
 <ul>
   <li>Define a Receiver with a JavaListener</li>
   <li>Set the attribute <code>name</code> to <i>yourServiceName</i></li>
   <li>Do not set the attribute <code>serviceName</code>, except if the service is to be called also
       from applications other than this IBIS-instance</li>
 </ul>

 <h4>configuring IbisLocalSender and WebServiceListener</h4>

 <ul>
   <li>Define a SenderPipe with an IbisLocalSender</li>
   <li>Set the attribute <code>serviceName</code> to <i>yourIbisWebServiceName</i></li>
   <li>Do not set the attribute <code>javaListener</code></li>
 </ul>
 In the Adapter to be called:
 <ul>
   <li>Define a Receiver with a WebServiceListener</li>
   <li>Set the attribute <code>name</code> to <i>yourIbisWebServiceName</i></li>
 </ul>
        
        
          
            
              
            
          
        
      
      
        
          Requires the net.bankid.merchant.library V1.2.9
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Sender used to run JavaScript code using `JavascriptEngine` implementations.
 <p>
 This sender can execute a function of a given Javascript file, the result of the function will be the output of the sender.
 The parameters of the Javascript function to run are given as parameters by the adapter configuration
 The sender doesn't accept nor uses the given input, instead for each argument for the #jsFunctionName method,
 you will need to create a parameter on the sender.
 </p>
 <p>
 The result of the Javascript function should be of type String, or directly convertible to String from a primitive type
 or an array of primitive types / strings, as the output of the sender will be of type String.
 </p>
 <p>
 Failure to ensure the output is a string may mean the result will look like {@code [Object object]}.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          This class sends messages with JMS.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XSLT transformation with a specified stylesheet on a JSON input, yielding JSON, yielding JSON, XML or text.
 JSON input is transformed into XML map, array, string, integer and boolean elements, in the namespace http://www.w3.org/2013/XSL/json.
 The XSLT stylesheet or XPathExpression operates on these element.
        
        
          
            
              
            
          
        
      
      
        
          Sender to obtain information from and write to an LDAP Directory.
 Returns the set of attributes in an XML format. Examples are shown below.

 <h2>example</h2>
 Consider the following configuration example:
 <code>
 <pre>
   &lt;sender
        className="org.frankframework.ldap.LdapSender"
        ldapProviderURL="ldap://servername:389/o=ing"
        operation="read"
        attributesToReturn="givenName,sn,telephoneNumber" &gt;
     &lt;param name="entryName" xpathExpression="entryName" /&gt;
   &lt;/sender&gt;
 </pre>
 </code>
 <br/>

 This may result in the following output:
 <code><pre>
 &lt;ldap&gt;
	&lt;entryName&gt;uid=srp,ou=people&lt;/entryName&gt;

	&lt;attributes&gt;
		&lt;attribute attrID="givenName"&gt;
			&lt;value&gt;Jan&lt;/value&gt;
		&lt;/attribute&gt;

		&lt;attribute attrID="telephoneNumber"&gt;
			&lt;value&gt;010 5131123&lt;/value&gt;
			&lt;value&gt;06 23456064&lt;/value&gt;
		&lt;/attribute&gt;

		&lt;attribute attrID="sn"&gt;
			&lt;value&gt;Jansen&lt;/value&gt;
		&lt;/attribute&gt;
	&lt;/attributes&gt;
 &lt;/ldap&gt;
  </pre></code> <br/>

 Search or Read?

 Read retrieves all the attributes of the specified entry.

 Search retrieves all the entries of the specified (by entryName) context that have the specified attributes,
 together with the attributes. If the specified attributes are null or empty all the attributes of all the entries within the
 specified context are returned.

 Sample result of a <code>read</code> operation:<br/><code><pre>
	&lt;attributes&gt;
	    &lt;attribute&gt;
	    &lt;attribute name="employeeType" value="Extern"/&gt;
	    &lt;attribute name="roomNumber" value="DP 2.13.025"/&gt;
	    &lt;attribute name="departmentCode" value="358000"/&gt;
	    &lt;attribute name="organizationalHierarchy"&gt;
	        &lt;item value="ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=000001,ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	    &lt;/attribute>
	    &lt;attribute name="givenName" value="Gerrit"/>
	&lt;/attributes&gt;

 </pre></code> <br/>
 Sample result of a <code>search</code> operation:<br/><code><pre>
	&lt;entries&gt;
	 &lt;entry name="uid=srp"&gt;
	   &lt;attributes&gt;
	    &lt;attribute&gt;
	    &lt;attribute name="employeeType" value="Extern"/&gt;
	    &lt;attribute name="roomNumber" value="DP 2.13.025"/&gt;
	    &lt;attribute name="departmentCode" value="358000"/&gt;
	    &lt;attribute name="organizationalHierarchy"&gt;
	        &lt;item value="ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=000001,ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	    &lt;/attribute>
	    &lt;attribute name="givenName" value="Gerrit"/>
	   &lt;/attributes&gt;
	  &lt;/entry&gt;
   &lt;entry&gt; .... &lt;/entry&gt;
   .....
	&lt;/entries&gt;
 </pre></code> <br/>
        
        
          
            
              
            
          
        
      
      
        
          Sender to work with the server local filesystem.
 <p>
     In addition to regular parameters for filesystem senders, it is possible
     to set custom extended attributes on files by prefixing parameter names with
     FileAttribute..
     This prefix will be not be part of the actual metadata property name.
 </p>
 <p>
     The string value of these parameters will be used as value of the custom metadata attribute.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Sender that just logs its message.
        
        
          
            
              
            
          
        
      
      
        
          JMS sender which will call IBM WebSphere MQ specific
 setTargetClient(JMSC.MQJMS_CLIENT_NONJMS_MQ) on the destination prior to
 sending a message. This is needed when the MQ destination is not a JMS
 receiver otherwise format errors occur (e.g. dots are added after every
 character in the message).

 <p>See JmsSender for configuration</p>
        
        
          
            
              
            
          
        
      
      
        
          sender that sends a mail specified by an XML message.
 <p>
 Sample email.xml:
 <code><pre>
    &lt;email&gt;
       &lt;recipients&gt;
          &lt;recipient type="to"&gt;***@hotmail.com&lt;/recipient&gt;
          &lt;recipient type="cc"&gt;***@gmail.com&lt;/recipient&gt;
       &lt;/recipients&gt;
       &lt;from name="*** ***"&gt;***@yahoo.com&lt;/from&gt;
       &lt;subject&gt;This is the subject&lt;/subject&gt;
       &lt;threadTopic&gt;subject&lt;/threadTopic&gt;
       &lt;message&gt;This is the message&lt;/message&gt;
       &lt;messageType&gt;text/plain&lt;/messageType&gt;&lt;!-- Optional --&gt;
       &lt;messageBase64&gt;false&lt;/messageBase64&gt;&lt;!-- Optional --&gt;
       &lt;charset&gt;UTF-8&lt;/charset&gt;&lt;!-- Optional --&gt;
       &lt;attachments&gt;
          &lt;attachment name="filename1.txt"&gt;This is the first attachment&lt;/attachment&gt;
          &lt;attachment name="filename2.pdf" base64="true"&gt;JVBERi0xLjQKCjIgMCBvYmoKPDwvVHlwZS9YT2JqZWN0L1N1YnR5cGUvSW1...vSW5mbyA5IDAgUgo+PgpzdGFydHhyZWYKMzQxNDY2CiUlRU9GCg==&lt;/attachment&gt;
          &lt;attachment name="filename3.pdf" url="file:/c:/filename3.pdf"/&gt;
          &lt;attachment name="filename4.pdf" sessionKey="fileContent"/&gt;
       &lt;/attachments&gt;&lt;!-- Optional --&gt;
   &lt;/email&gt;
 </pre></code>
 </p><p>
 Notice: the XML message must be valid XML. Therefore, especially the message element
 must be plain text or be wrapped as CDATA. Example:
 <code><pre>
    &lt;message&gt;&lt;![CDATA[&lt;h1&gt;This is a HtmlMessage&lt;/h1&gt;]]&gt;&lt;/message&gt;
 </pre></code>
 </p><p>
 The <code>sessionKey</code> attribute for attachment can contain an inputstream or a string. Other types are not supported at this moment.
 </p><p>
 The attribute order for attachments is as follows:
 <ol>
    <li>sessionKey</li>
    <li>url</li>
    <li><i>value of the attachment element</i></li>
 </ol>
 </p><p>
 The <code>base64</code> attribute is only used when the value of the PipeLineSession variable <code>sessionKey</code> is a String object
 or when the value of the attachment element is used. If <code>base64=true</code> then the value will be decoded before it's used.
 </p><p>
 <b>Compilation and Deployment Note:</b> mail.jar (v1.2) and activation.jar must appear BEFORE j2ee.jar.
 Otherwise errors like the following might occur: <code>NoClassDefFoundException: com/sun/mail/util/MailDateFormat</code>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Send messages to the IBISSTORE database table to have them processed exactly-once by another
 adapter which will read the messages using a MessageStoreListener.
 This other adapter will process the messages asynchronously and (optionally)
 under transaction control. Duplicate messages are ignored based on the
 messageId (except when onlyStoreWhenMessageIdUnique is set to false), hence
 the sender of the message can retry sending the message until a valid reply
 is received in which case it can be certain that the message is stored in the
 database table IBISSTORE.
 <br/><br/>
 If you have a <code>MessageStoreSender</code> it does not make sense to add a <code>JdbcMessageLog</code>
 or <code>JdbcErrorStorage</code> in the same sender pipe. A <code>MessageStoreSender</code>
 acts as a message log and an error store. It can be useful however to add a message log or error store
 to the adapter around the sender pipe, because errors may occur before the message reaches the sender pipe.
 <br/><br/>
 Example configuration:
 <code><pre>
	&lt;SenderPipe name="Send"&gt;
		&lt;MessageStoreSender
			slotId="${instance.name}/TestMessageStore"
			onlyStoreWhenMessageIdUnique="false"
		/&gt;
	&lt;/SenderPipe&gt;
 </pre></code>
        
        
          
            
              
            
          
        
      
      
        
          Sender to perform action on a MongoDB database.
        
        
          
            
              
            
          
        
      
      
        
          MQTT listener which will connect to a broker and subscribe to a topic.

 Links to <a href="https://www.eclipse.org/paho/files/javadoc" target="_blank">https://www.eclipse.org/paho/files/javadoc</a> are opened in a new window/tab because the response from eclipse.org contains header X-Frame-Options:SAMEORIGIN which will make the browser refuse to open the link inside this frame.
        
        
          
            
              
            
          
        
      
      
        
          Sender for Akamai NetStorage (HTTP based).

 <p>See HttpSenderBase for more arguments and parameters!</p>


 <p><b>AuthAlias:</b></p>
 <p>If you do not want to specify the nonce and the accesstoken used to authenticate with Akamai, you can use the authalias property. The username represents the nonce and the password the accesstoken.</p>
        
        
          
            
              
            
          
        
      
      
        
          Collection of Senders, that are executed all at the same time.
        
        
          
            
              
            
          
        
      
      
        
          Wrapper for senders, that opens the wrapped sender at runtime before each sender action, and closes it afterwards.
 This prevents (long) open connections inside Senders and possible connection failures.

 <b>Example:</b>
 <pre><code>
   &lt;SenderPipe&gt;
     &lt;ReconnectSenderWrapper&gt;
        &lt;EchoSender myAttribute="myValue" /&gt;
     &lt;/ReconnectSenderWrapper&gt;
   &lt;/SenderPipe&gt;
 </code></pre>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Performs a reload on database configuration.

 <p>It is possible to set the name of the configuration with the parameter 'name'.</p>
 <p>You can dynamically set 'forceReload' attribute with the parameter 'forceReload'.</p>
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that writes each row in a ResultSet to a file.
        
        
          
            
              
            
          
        
      
      
        
          Uses the (old) SMB 1 protocol.
 <br/>
 Only supports NTLM authentication.
        
        
          
            
              
            
          
        
      
      
        
          Uses the (newer) SMB 2 and 3 protocol.

 Possible error codes:
 <br/>
 Pre-authentication information was invalid (24) or Identifier doesn't match expected value (906): login information is incorrect
 Server not found in Kerberos database (7): Verify that the hostname is the FQDN and the server is using a valid SPN.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Registers a trigger in the scheduler so that the message is send to a javalistener
 at a scheduled time.
        
        
          
            
              
            
          
        
      
      
        
          Sender that sends a mail via SendGrid v3 (cloud-based SMTP provider).

 Sample XML file can be found in the path: iaf-core/src/test/resources/emailSamplesXML/emailSample.xml
        
        
          
            
              
            
          
        
      
      
        
          Series of Senders, that are executed one after another.
        
        
          
            
              
            
          
        
      
      
        
          Wrapper for senders, that allows to get input from a session variable, and to store output in a session variable.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Collection of Senders, that are executed all at the same time. Once the results are processed, all results will be sent to the resultSender,
 while the original sender will return its result to the pipeline.

 <p>Multiple sub-senders can be configured within the ShadowSender, the minimum amount of senders is 2 (originalSender + resultSender)</p>
        
        
          
            
              
            
          
        
      
      
        
          StoredProcedureQuerySender is used to send stored procedure queries and retrieve the result.

 <p>
     <h3>QueryType settings and OUTPUT parameters</h3>
 The StoredProcedureQuerySender class has the following features:
 <ul>
     <li>It supports setting the output parameters of the stored procedure by setting 'mode' attribute of
     the corresponding 'Param' to 'OUTPUT' or 'INOUT'.</li>
     <li>The queryType can only be 'SELECT' or 'OTHER'.</li>
     <li>Use queryType 'SELECT' when the stored procedure only returns a set of rows, and you need
     the output to be the format as FixedQuerySender (see DB2XMLWriter).</li>
     <li>Use queryType 'OTHER' if the stored procedure has one or more output parameters. With this query type,
     the stored procedure can return a result-set along with returning some values in output parameters.
     Depending on the database, the stored procedure can even returning multiple result sets or a combination
     of result sets as return values, and result sets as REF_CURSOR OUT parameters. </li>
 </ul>
 </p>
 <p>
     All stored procedure parameters that are not fixed, so specified in the query with a {@code ?}, should
     have a corresponding IParameter entry. Output parameters should have {@code mode="OUTPUT"}, or
     {@code mode="INOUT"} depending on how the stored procedure is defined.
 </p>
 <p>
	<h3>Sample Output for queryType=OTHER</h3>
	<h4>Basic Example with Only Simple Output Parameters</h4>
  <code><pre>
	&lt;resultset&gt;
		&lt;result param="r1" type="STRING"&gt;MESSAGE-CONTENTS&lt;/result&gt;
		&lt;result param="r2" type="STRING"&gt;E&lt;/result&gt;
	&lt;/resultset&gt;
  </pre></code>

	<h4>Example with Resultset and Simple Output Parameters</h4>
  <code><pre>
	 &lt;resultset&gt;
		 &lt;result resultNr="1"&gt;
			 &lt;fielddefinition&gt;
				&lt;field name="FIELDNAME"
						  type="columnType"
						  columnDisplaySize=""
						  precision=""
						  scale=""
						  isCurrency=""
						  columnTypeName=""
						  columnClassName=""/&gt;
				 &lt;field ...../&gt;
 		     &lt;/fielddefinition&gt;
			 &lt;rowset&gt;
				 &lt;row number="0"&gt;
					 &lt;field name="TKEY"&gt;MSG-ID&lt;/field&gt;
					 &lt;field name="TCHAR"&gt;E&lt;/field&gt;
					 &lt;field name="TMESSAGE"&gt;MESSAGE-CONTENTS&lt;/field&gt;
					 &lt;field name="TCLOB" null="true"/&gt;
					 &lt;field name="TBLOB" null="true"/&gt;
				 &lt;/row&gt;
                 &lt;row number="1" ...../&gt;
			 &lt;/rowset&gt;
		 &lt;/result&gt;
		 &lt;result param="count" type="INTEGER"&gt;5&lt;/result&gt;
	 &lt;/resultset&gt;
  </pre></code>

	<h4>Example with Simple and Cursor Output Parameters</h4>
	<code><pre>
	&lt;resultset&gt;
		&lt;result param="count" type="INTEGER"&gt;5&lt;/result&gt;
		&lt;result param="cursor1" type="LIST"&gt;
			 &lt;fielddefinition&gt;
				&lt;field name="FIELDNAME"
						  type="columnType"
						  columnDisplaySize=""
						  precision=""
						  scale=""
						  isCurrency=""
						  columnTypeName=""
						  columnClassName=""/&gt;
				 &lt;field ...../&gt;
 		     &lt;/fielddefinition&gt;
			&lt;rowset&gt;
				&lt;row number="0"&gt;
					&lt;field name="TKEY"&gt;MSG-ID&lt;/field&gt;
					&lt;field name="TCHAR"&gt;E&lt;/field&gt;
					&lt;field name="TMESSAGE"&gt;MESSAGE-CONTENTS&lt;/field&gt;
					&lt;field name="TCLOB" null="true"/&gt;
					&lt;field name="TBLOB" null="true"/&gt;
				&lt;/row&gt;
				&lt;row number="1" ..... /&gt;
			&lt;/rowset&gt;
		&lt;/result&gt;
	&lt;/resultset&gt;
	</pre></code>
 </p>
 <p><em>NOTE:</em> Support for stored procedures is currently experimental and changes in the currently produced output-format
 are expected.</p>
        
        
          
            
              
            
          
        
      
      
        
          Sender that sends a message via a WebService.
        
        
          
            
              
            
          
        
      
      
        
          XCom client voor het versturen van files via XCom.
        
        
          
            
              
            
          
        
      
      
        
          Sender for transferring files using the XFB protocol. Assumes sender input is local filename.
 <br/>
 Some comments from Richard Maddox (FTO) about UNIX File permissions:
 <br/>
 <br/>
 In case of AIX or SUN systems we advise the following user and directory permissions:
 <br/>
 <br/>
 SENDING CFT:
 <br/>
 - App_user must have secondary group: xfbgw
 <br/>
 - Folder should have ownership: app_user:xfbgw   (owner:group)
 <br/>
 - Folder should have access rights: 770  (rwx.rwx.---)  so nobody other then app_user and group xfbgw can do something in this folder
 <br/>
 - Folder should have SGID bit set so that all files what is copied to this folder get group ownership xfbgw
 <br/>
 - send file must have rights 660 after putting the file in the send directory.
 <br/>
 <br/>
 RECEIVING CFT:
 <br/>
 - App_user (the application user of customer) should have secondary group: xfbgw
 <br/>
 - Folder should have ownership:  app_user:xfbgw   (owner:group)
 <br/>
 - Folder should have access rights: 770  (rwx.rwx.---)  so nobody other then app_user and group xfbgw can do something in this folder
 <br/>
 - Folder should have SGID bit set, so that all files what is copied to this folder get group ownership xfbgw
 <br/>
 <br/>
 There are of course more solutions to get the job done, but this is the solution we can guarantee.
        
        
          
            
              
            
          
        
      
      
        
          Sender for browsing and removing queue messages (with input and output in a XML message).

 <p>
 When input root element is <code>browse</code> all queue messages are returned.
 </p>
 <p>
 When input root element is <code>remove</code> all queue messages are removed.
 </p>
 <p>
 <b>example (input):</b>
 <code>
 <pre>
   &lt;browse&gt;
      &lt;jmsRealm&gt;qcf&lt;/jmsRealm&gt;
      &lt;destinationName&gt;jms/GetPolicyDetailsRequest&lt;/destinationName&gt;
      &lt;destinationType&gt;QUEUE&lt;/destinationType&gt;
   &lt;/browse>
 </pre>
 </code>
 </p>


 <p>
 <b>example (browse output):</b>
 <code>
 <pre>
   &lt;result&gt;
	    &lt;items count="2"&gt;
	       &lt;item&gt;
	          &lt;timestamp&gt;Thu Nov 20 13:36:31 CET 2014&lt;/timestamp&gt;
	          &lt;messageId&gt;ID:LPAB00000003980-61959-1416486781822-3:5:33:1:1&lt;/messageId&gt;
	          &lt;correlationId&gt;...&lt;/correlationId&gt;
	          &lt;message&gt;&lt;![CDATA[...]]&gt;&lt;/message&gt;
	       &lt;/item&gt;
	       &lt;item&gt;
	          &lt;timestamp&gt;Thu Dec 12 11:59:22 CET 2014&lt;/timestamp&gt;
	          &lt;messageId&gt;ID:LPAB00000003980-58359-1721486799722-3:4:19:1:1&lt;/messageId&gt;
	          &lt;correlationId&gt;...&lt;/correlationId&gt;
	          &lt;message&gt;&lt;![CDATA[...]]&gt;&lt;/message&gt;
	       &lt;/item&gt;
	    &lt;/items&gt;
   &lt;/result&gt;
 </pre>
 </code>
 </p>

 <p>
 <b>example (remove output):</b>
 <code>
 <pre>
   &lt;result&gt;
	    &lt;itemsRemoved&gt;2&lt;/itemsRemoved&gt;
   &lt;/result&gt;
 </pre>
 </code>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that transforms the input message to a query.
 <br/><code><pre>
  select
  delete
  insert
  update - tableName
         - columns [0..1] - column [1..n] - name
                                          - value [0..1]
                                          - type [0..1] one of {string;function;number;datetime;blob;clob;xmldatetime}, string by default
                                          - decimalSeparator [0..1] only applicable for type=number
                                          - groupingSeparator [0..1] only applicable for type=number
                                          - formatString [0..1] only applicable for type=datetime, yyyy-MM-dd HH:mm:ss.SSS by default
         - where [0..1]
         - order [0..1]
 <br/>
  alter - sequenceName
        - startWith
 <br/>
  sql   - type [0..1] one of {select;ddl;other}, other by default
        - query
 <br/>
 </pre></code><br/>
        
        
          
            
              
            
          
        
      
      
        
          Sender that validates the input message against a XML Schema.

 N.B. noNamespaceSchemaLocation may contain spaces, but not if the schema is stored in a .jar or .zip file on the class path.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XSLT transformation with a specified stylesheet or XPath-expression.
        
        
          
            
              
            
          
        
      
      
        
          Sender that writes an entry to a ZipStream, similar to ZipWriterPipe with action='write'.
 Filename and contents are taken from parameters. If one of the parameters is not present, the input message
 is used for either filename or contents.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
  
  
    
      
        The functional name of the object.
      
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        Access key to access to the AWS resources owned by the account
      
    
    
      
        Secret key to access to the AWS resources owned by the account
      
    
    
      
        Alias used to obtain AWS credentials
      
    
    
      
        Setting this flag will result in disabling chunked encoding for all requests. Default: false
      
    
    
      
        Set whether the client should be configured with global bucket access enabled. Default: false
      
    
    
      
        Name of the region that the client will be created from Default: eu-west-1
      
    
    
      
        Name of the bucket to access. The bucketName can also be specified by prefixing it to the object name, separated from it by |
      
    
    
      
        Proxy host
      
    
    
      
        Proxy port
      
    
    
      
        The S3 service endpoint, either with or without the protocol. (e.g. https://sns.us-west-1.amazonaws.com or sns.us-west-1.amazonaws.com)
      
    
    
      
        Maximum concurrent connections towards S3
      
    
  
  
    
    
  
  
    
      
    
  
  
    
      
        name of the sender
      
    
    
    
  
  
    
      
        If parameter [action] is set, then the attribute action value will be overridden with the value of the parameter.
      
      
        
      
    
    
      
        Filename to operate on. If not set, the parameter filename is used. If that is not set either, the input is used
      
    
    
      
        Destination for move, copy or rename. If not set, the parameter destination is used. If that is not set either, the input is used
      
    
    
      
        Folder that is scanned for files when action=list. When not set, the root is scanned
      
    
    
      
        If <code>true</code>: if a non-existing folder is part of the fileName, it will be created. Default: false
      
    
    
      
        If set <code>true</code>, for actions create, write, move, copy or rename, the destination file is overwritten if it already exists Default: false
      
    
    
      
        For action=append: If set to a positive number, the file is rotated each day, and this number of files is kept. The inputFolder must point to the directory where the file resides Default: 0
      
    
    
      
        For action=append: If set to a positive number, the file is rotated when it has reached the specified size, and the number of files specified in numberOfBackups is kept. Size is specified in plain bytes, suffixes like 'K', 'M' or 'G' are not recognized. The inputFolder must point to the directory where the file resides Default: 0
      
    
    
      
        For the actions write and append, with rotateSize>0: the number of backup files that is kept. The inputFolder must point to the directory where the file resides Default: 0
      
    
    
      
        Filter of files to look for in inputFolder e.g. '*.inp'. Works with actions move, copy, delete and list
      
    
    
      
        Filter of files to be excluded when looking in inputFolder. Works with actions move, copy, delete and list
      
    
    
      
        If set to <code>true</code> then the folder and the content of the non empty folder will be deleted.
      
    
    
      
        If set to <code>true</code> then the system specific line separator will be appended to the file after executing the action. Works with actions write and append Default: false
      
    
    
      
        Charset to be used for read and write action
      
    
    
      
        If set to true then the folder will be deleted if it is empty after processing the action. Works with actions delete, readDelete and move
      
    
    
      
        OutputFormat Default: XML
      
      
        
      
    
    
      
        Filter for action <code>list</code>. Specify <code>FILES_ONLY</code>, <code>FOLDERS_ONLY</code> or <code>FILES_AND_FOLDERS</code>. Default: FILES_ONLY
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Specifies action to perform
      
      
        
      
    
    
      
        The maximum number of concurrent connections Default: 10
      
    
    
      
        READ_TIMEOUT timeout in MS.
 Defaults to 10000, inherited from HttpSender#setTimeout. Default: 10000
      
    
    
      
        URL to connect to
      
    
    
      
        Repository ID
      
    
    
      
        Alias used to obtain credentials for authentication to host
      
    
    
      
        Username used in authentication to host
      
    
    
      
        Password used in authentication to host
      
    
    
      
        BindingType CMIS protocol to use
      
      
        
      
    
    
      
        If <code>action</code>=<code>create</code> the sessionKey that contains the file to use. If <code>action</code>=<code>get</code> and <code>getProperties</code>=<code>true</code> the sessionKey to store the result in
      
    
    
      
        If <code>action</code>=<code>create</code> the session key that contains the name of the file to use. If not set, the value of the property <code>filename</code> from the input message is used
      
    
    
      
        If <code>action</code>=<code>create</code> the mime type used to store the document when it's not set in the input message by a property Default: 'application/octet-stream'
      
    
    
      
        (Only used when <code>action</code>=<code>get</code>). If true, the content of the document is put to <code>FileSessionKey</code> and all document properties are put in the result as a xml string Default: false
      
    
    
      
        (Only used when <code>action</code>=<code>get</code>). If true, the attachment for the document is the sender result or, if set, stored in <code>FileSessionKey</code>. If false, only the properties are returned Default: true
      
    
    
      
        (Only used when <code>action</code>=<code>create</code>). If true, the document is created in the root folder of the repository. Otherwise the document is created in the repository Default: true
      
    
    
      
        If true, the session is not closed at the end and it will be used in the next call Default: true
      
    
    
      
        Override entrypoint WSDL by reading it from the classpath, overrides url attribute
      
    
    
      
        Resource url to keystore or certificate. If none specified, the JVMs default keystore will be used.
      
    
    
      
        Type of keystore Default: pkcs12
      
      
        
      
    
    
      
        Authentication alias used to obtain keystore password
      
    
    
      
        Default password to access keystore
      
    
    
      
        Alias to obtain specific certificate or key in keystore
      
    
    
      
        Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        Resource url to truststore. If none specified, the JVMs default truststore will be used.
      
    
    
      
        Type of truststore Default: jks
      
      
        
      
    
    
      
        Authentication alias used to obtain truststore password
      
    
    
      
        Default password to access truststore
      
    
    
      
        Trust manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
      
    
    
      
        If <code>true</code>, self signed certificates are accepted Default: false
      
    
    
      
        If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
      
    
    
      
        Proxy host url
      
    
    
      
        Proxy host port Default: 80
      
    
    
      
        Alias used to obtain credentials for authentication to proxy
      
    
    
      
        Proxy Username
      
    
    
      
        Proxy Password
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The command to be executed. Note: Executing a command in WAS requires &lt;&lt;ALL FILES&gt;&gt; execute permission to avoid that provide the absolute path of the command. Absolute path can be found with the following command 'which -a {commandName}'
      
    
    
      
        The number of seconds to execute a command. If the limit is exceeded, a TimeoutException is thrown. A value of 0 means execution time is not limited Default: 0
      
    
    
      
        In case the command that will be executed contains arguments then this flag should be set to true Default: false
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        The time <i>in milliseconds</i> the thread will be put to sleep Default: 5000 [ms]
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        The number of seconds the JDBC driver will wait for a statement object to execute. If the limit is exceeded, a TimeoutException is thrown. A value of 0 means execution time is not limited Default: 0
      
    
  
  
    
    
  
  
    
    
      
        Type of query to be executed Default: OTHER
      
      
        
      
    
    
    
    
      
        The maximum number of rows to be returned from the output of <code>select</code> queries, -1 means unlimited rows Default: -1
      
    
    
      
        The number of the first row to be returned from the output of <code>select</code> queries. Rows before this are skipped from the output. Default: 1
      
    
    
    
    
      
        Comma separated list of columns whose values are to be returned. Works only if the driver implements jdbc 3.0 getGeneratedKeys().
 Note: not all drivers support multiple values and returned field names may vary between drivers.
 Works for H2 and Oracle. Could work for MS_SQL with a single identity column, with name GENERATED_KEYS, if a identity has been generated. Not supported for other DBMSes.
      
    
    
    
    
    
      
        If specified, the rowid of the processed row is put in the pipelinesession under the specified key (only applicable for <code>querytype=other</code>). <b>Note:</b> If multiple rows are processed a SqlException is thrown.
      
    
    
      
        If set, the SQL dialect in which the queries are written and should be translated from to the actual SQL dialect
      
    
    
      
        When set <code>true</code>, exclusive row-level locks are obtained on all the rows identified by the select statement (e.g. by appending ' FOR UPDATE NOWAIT SKIP LOCKED' to the end of the query) Default: false
      
    
    
      
        when set and >=0, ' FOR UPDATE WAIT #' is used instead of ' FOR UPDATE NOWAIT SKIP LOCKED' Default: -1
      
    
    
    
      
        Only for querytype 'updateBlob': column that contains the BLOB to be updated Default: 1
      
    
    
      
        For querytype 'updateBlob': key of session variable that contains the data (String or InputStream) to be loaded to the BLOB. When empty, the input of the pipe, which then must be a String, is used.
 For querytype 'select': key of session variable that contains the OutputStream, Writer or Filename to write the BLOB to
      
    
    
      
        controls whether blobdata is stored compressed in the database Default: true
      
    
    
      
        controls whether the streamed blobdata will need to be base64 <code>encode</code> or <code>decode</code> or not.
      
      
        
      
    
    
      
        Charset that is used to read and write BLOBs. This assumes the blob contains character data.
 If blobCharset and blobSmartGet are not set, BLOBs are returned as bytes. Before version 7.6, blobs were base64 encoded after being read to accommodate for the fact that senders need to return a String. This is no longer the case
      
    
    
      
        Controls automatically whether blobdata is stored compressed and/or serialized in the database Default: false
      
    
    
      
        Only for querytype 'updateClob': column that contains the CLOB to be updated Default: 1
      
    
    
      
        For querytype 'updateClob': key of session variable that contains the CLOB (String or InputStream) to be loaded to the CLOB. When empty, the input of the pipe, which then must be a String, is used.
 For querytype 'select': key of session variable that contains the OutputStream, Writer or Filename to write the CLOB to
      
    
    
    
    
      
        If true, then select queries are executed in a way that avoids taking locks, e.g. with isolation mode 'read committed' instead of 'repeatable read'. Default: false
      
    
    
    
      
        The type of output. If not set then defaults to old-style XML. If set to XML, new-style XML is used. EXPERIMENTAL: datatypes like numbers are not yet rendered correctly Default: false
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        hack to allow to introduce a correlationid Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        protocol of ESB service to be called
      
      
        
      
    
    
      
        receiver timeout, in milliseconds Default: 20000 (20s)
      
    
    
      
        if messageProtocol=<code>RR</code> then <code>deliveryMode</code> defaults to <code>NON_PERSISTENT</code> Default: not set by application
      
      
        
      
    
    
      
        if messageProtocol=<code>RR</code> then <code>replyTimeout</code> defaults to <code>timeout</code> Default: 5000
      
    
    
      
        if messageProtocol=<code>RR</code> then <code>synchronous</code> defaults to <code>true</code> Default: false
      
    
    
      
        if messageProtocol=<code>RR</code> then if <code>soapAction</code> is empty then it is derived from the element MessageHeader/To/Location in the SOAP header of the input message (if $messagingLayer='P2P' then '$applicationFunction' else '$operationName_$operationVersion)
      
    
  
  
    
    
    
    
    
    
    
      
        If <code>true</code>, messages sent are put in a SOAP envelope Default: false
      
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
    
      
        If <code>true</code>, the sender operates in RR mode: A reply is expected, either on the queue specified in <code>replyToName</code>, or on a dynamically generated temporary queue Default: false
      
    
    
    
    
      
        (Only for <code>synchronous</code>=<code>true</code>). Maximum time in ms to wait for a reply. 0 means no timeout. Default: 5000
      
    
    
    
      
        Controls mode that messages are sent with Default: not set by application
      
      
        
      
    
    
    
      
        If <code>true</code>, messages sent are put in a SOAP envelope Default: false
      
    
    
    
    
      
        SOAPAction string sent as message property
      
    
    
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The mail address of the mailbox connected to (also used for auto discovery)
      
    
    
      
        Url of the Exchange server. Set to e.g. https://outlook.office365.com/EWS/Exchange.asmx to speed up startup, leave empty to use autodiscovery
      
    
    
      
        Client ID that represents a registered application in Azure AD which could be found at Azure AD -> App Registrations -> MyApp -> Overview.
      
    
    
      
        Client secret that belongs to registered application in Azure AD which could be found at Azure AD -> App Registrations -> MyApp -> Certificates and Secrets
      
    
    
      
        Tenant ID that represents the tenant in which the registered application exists within Azure AD which could be found at Azure AD -> App Registrations -> MyApp -> Overview.
      
    
    
      
        Alias used to obtain client ID and secret or username and password for authentication to Exchange mail server.
 If the attribute tenantId is empty, the deprecated Basic Authentication method is used.
 If the attribute tenantId is not empty, the username and password are treated as the client ID and secret.
      
    
    
      
        Folder (subfolder of root or of inbox) to look for mails. If empty, the inbox folder is used
      
    
    
      
        If empty, all mails are retrieved. If set to <code>NDR</code> only Non-Delivery Report mails ('bounces') are retrieved
      
    
    
      
        Comma separated list of fields to try as response address Default: replyTo,from,sender,Return-Path
      
    
    
      
        proxy host
      
    
    
      
        proxy port Default: 8080
      
    
    
      
        proxy username
      
    
    
      
        proxy password
      
    
    
      
        proxy authAlias
      
    
    
      
        proxy domain
      
    
    
      
        Separator character used when working with multiple mailboxes, specified before the separator in the object name <code>[email protected]|My sub folder</code> or <code>[email protected]|AAMkADljZDMxYzIzLTFlMjYtNGY4Mi1hM2Y1LTc2MjE5ZjIyZmMyNABGAAAAAAAu/9EmV5M6QokBRZwID1Q6BwDXQXY+F44hRbDfTB9v8jRfAAAEUqUVAADXQXY+F44hRbDfTB9v8jRfAAKA4F+pAAA=</code>.
 Please consider when moving emails across mailboxes that there will be a null value returned instead of the newly created identifier. Default: |
      
    
    
      
        Resource url to keystore or certificate. If none specified, the JVMs default keystore will be used.
      
    
    
      
        Type of keystore Default: pkcs12
      
      
        
      
    
    
      
        Authentication alias used to obtain keystore password
      
    
    
      
        Default password to access keystore
      
    
    
      
        Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        Alias to obtain specific certificate or key in keystore
      
    
    
      
        Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Resource url to truststore. If none specified, the JVMs default truststore will be used.
      
    
    
      
        Type of truststore Default: jks
      
      
        
      
    
    
      
        Authentication alias used to obtain truststore password
      
    
    
      
        Default password to access truststore
      
    
    
      
        Trust manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
      
    
    
      
        If <code>true</code>, self signed certificates are accepted Default: false
      
    
    
      
        If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        The SQL query text to be executed each time sendMessage() is called
      
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        should values between ${ and } be resolved from the pipelinesession Default: false
      
    
    
      
        Name of the file containing the result message
      
    
    
      
        returned message
      
    
    
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        pathname of the file or directory to list. Default: Home folder of the ftp user
      
    
    
      
        Name or ip address of remote host
      
    
    
      
        Port number of remote host Default: 21
      
    
    
      
        Name of the alias to obtain credentials to authenticatie on remote server
      
    
    
      
        Name of the user to authenticatie on remote server
      
    
    
      
        Password to authenticatie on remote server
      
    
    
      
        Proxy hostname
      
    
    
      
        Proxy port Default: 1080
      
    
    
      
        FTP protocol to use Default: FTP
      
      
        
      
    
    
      
        
      
    
    
      
        If <code>true</code>, passive ftp is used: before data is sent, a pasv command is issued, and the connection is set up by the server Default: true
      
    
    
      
        (ftps) Transport type in case of sftp Default: SOCKS5
      
      
        
      
    
    
      
        (ftps) Resource url to keystore or certificate to be used for authentication. If none specified, the JVMs default keystore will be used.
      
    
    
      
        (ftps) Type of keystore Default: pkcs12
      
      
        
      
    
    
      
        (ftps) Authentication alias used to obtain keystore password
      
    
    
      
        (ftps) Default password to access keystore
      
    
    
      
        (ftps) Alias to obtain specific certificate or key in keystore
      
    
    
      
        (ftps) Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        (ftps) Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        (ftps) Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        (ftps) Resource url to truststore to be used for authenticating peer. If none specified, the JVMs default truststore will be used.
      
    
    
      
        (ftps) Type of truststore Default: jks
      
      
        
      
    
    
      
        (ftps) Authentication alias used to obtain truststore password
      
    
    
      
        (ftps) Default password to access truststore
      
    
    
      
        (ftps) Trust manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        (ftps) If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
      
    
    
      
        (ftps) If <code>true</code>, self signed certificates are accepted Default: false
      
    
    
      
        (ftps) If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
      
    
    
      
        Sets the <code>Data Channel Protection Level</code>. Default: C
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        If <code>methodType</code>=<code>POST</code>, <code>PUT</code> or <code>PATCH</code>, the type of post request Default: RAW
      
      
        
      
    
    
      
        (Only used when <code>methodType</code>=<code>POST</code> and <code>postType</code>=<code>URLENCODED</code>, <code>FORM-DATA</code> or <code>MTOM</code>) Prepends a new BodyPart using the specified name and uses the input of the Sender as content
      
    
    
      
        If set and <code>methodType</code>=<code>POST</code> and <code>paramsInUrl</code>=<code>false</code>, a multipart/form-data entity is created instead of a request body.
 For each part element in the session key a part in the multipart entity is created. Part elements can contain the following attributes:
 <ul>
 <li>name: optional, used as 'filename' in Content-Disposition</li>
 <li>sessionKey: mandatory, refers to contents of part</li>
 <li>mimeType: optional MIME type</li>
 </ul>
 The name of the part is determined by the name attribute, unless that is empty, or the contents is binary. In those cases the sessionKey name is used as name of the part.
      
    
    
    
      
        Specifies whether messages will encoded, e.g. spaces will be replaced by '+' etc. Default: false
      
    
    
      
        If <code>true</code>, the input will be added to the URL for <code>methodType</code>=<code>GET</code>, or for <code>methodType</code>=<code>POST</code>, <code>PUT</code> or <code>PATCH</code> if <code>postType</code>=<code>RAW</code>. This used to be the default behaviour in framework version 7.7 and earlier Default: for methodType=<code>GET</code>: <code>false</code>,<br/>for methodTypes <code>POST</code>, <code>PUT</code>, <code>PATCH</code>: <code>true</code>
      
    
  
  
    
    
  
  
    
      
    
  
  
    
    
    
    
    
    
    
    
    
      
        (Only used when xHtml=<code>true</code>) stylesheet to apply to the HTML response
      
    
    
    
    
      
        The functional name of the object.
      
    
  
  
    
    
      
        Timeout in ms of obtaining a connection/result. Default: 10000
      
    
    
    
    
      
        Authentication alias used for authentication to the host
      
    
    
      
        Username used for authentication to the host
      
    
    
      
        Password used for authentication to the host
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
      
        Timeout in ms of obtaining a connection/result. Default: 10000
      
    
    
    
    
      
        Authentication alias used for authentication to the host
      
    
    
      
        Username used for authentication to the host
      
    
    
      
        Password used for authentication to the host
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        The transaction code that should be added in the header, must be 8 characters
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        ServiceName of the JavaListener that should be called.
      
    
    
      
        Key of session variable to specify ServiceName of the JavaListener that should be called.
      
    
    
      
        Comma separated list of keys of session variables that will be returned to caller, for correct results as well as for erroneous results.
 The set of available sessionKeys to be returned might be limited by the returnedSessionKeys attribute of the corresponding JavaListener.
      
    
    
      
        Set to 'DLL' to make the dispatcher communicate with a DLL set on the classpath
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Name of the JavaListener that should be called (will be ignored when javaListenerSessionKey is set)
      
    
    
      
        Name of the sessionKey which holds the name of the JavaListener that should be called
      
    
    
      
        Comma separated list of keys of session variables that will be returned to caller, for correct results as well as for erroneous results.
 The set of available sessionKeys to be returned might be limited by the returnedSessionKeys attribute of the corresponding JavaListener.
      
    
    
      
        If set <code>false</code>, the call is made asynchronously. This implies isolated=<code>true</code> Default: true
      
    
    
      
        If <code>true</code>, the call is made in a separate thread, possibly using separate transaction Default: false
      
    
    
      
        If <code>true</code>, the sender waits upon open until the called JavaListener is opened Default: true
      
    
    
      
        Maximum time (in seconds) the sender waits for the listener to start. A value of -1 indicates to wait indefinitely Default: 60
      
    
    
      
        If set <code>false</code>, the xml-string \"&lt;error&gt;could not find JavaListener [...]&lt;/error&gt;\" is returned instead of throwing a senderexception Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        
      
    
    
      
        This is the contract number for iDIN the Merchant received from its Acquirer after registration,
 and is used to unambiguously identify the Merchant. This number is 10-digits long, where the
 first four digits are equal to the AcquirerID.
      
    
    
      
        The SubID that uniquely defines the name and address of the Merchant to be used for iDIN,
 if operating under different brands or trading entities. The Merchant obtains the SubID
 from its Acquirer after registration for iDIN. A Merchant can request permission from
 the Acquirer to use one or more SubIDs.
      
    
    
      
        The web address provided by the Merchant in the transaction request that is used to redirect the
 Consumer back to the Merchant after completing the authentication in the Issuer domain. The URL
 does not necessarily begin with http:// or https://, it can also start with an app handler
 e.g. companyname-nlservice://.
      
    
    
    
    
    
      
        The Java iDIN Software Library needs to access a keystore located in the Java classpath to
 store all the required certificates
      
    
    
      
        The password used to access the keystore
      
    
    
      
        The AuthAlias used to access the keystore
      
    
    
      
        This is the certificate owned by the Merchant. It's the private certificate
 used to sign messages sent by the Merchant to the Acquirer's Routing Service platform. Its public
 key is also used by the Acquirer to authenticate incoming messages from the Merchant. The
 Merchant certificate must be in PKCS#12 format which has the extension .p12 or .pfx
      
    
    
      
        In case the merchant certificate has been password protected
      
    
    
      
        In case the merchant certificate has been password protected
      
    
    
      
        This is the public certificate used to authenticate incoming messages from the Acquirer. The library
 only needs its public key. The public certificate must be in PEM format (base64 ASCII) and typically
 has the file extension .cer,.crt or .pem.
      
    
    
      
        This is the public certificate used to authenticate incoming messages from the Acquirer. The library
 only needs its public key. The public certificate must be in PEM format (base64 ASCII) and typically
 has the file extension .cer,.crt or .pem.
      
    
    
      
        This is the certificate owned by the Merchant. Its public key is used by the Issuer to encrypt information.
 The Merchant can then use the private key to decrypt that information. The SAML certificate must be in
 PKCS#12 format which has the extension .p12 or .pfx;
      
    
    
      
        In case the SAML certificate has been password protected
      
    
    
      
        In case the SAML certificate has been password protected
      
    
    
    
    
    
    
    
    
      
        Load configuration from XML. Attributes may overwrite this 'default'.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        Session key in which LUW information is stored. If set, actions that share a LUW-handle will be executed using the same destination. Can only be used for synchronous functions
      
    
    
      
        Name of the parameter used to indicate the name of the SapSystem used by this object if the attribute <code>sapSystemName</code> is empty Default: sapSystemName
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The hostname of the IMAP server
      
    
    
      
        The port of the IMAP server Default: 993
      
    
    
      
        Alias used to obtain accessToken or username and password for authentication to Exchange mail server.
 If the alias refers to a combination of a username and a password, the deprecated Basic Authentication method is used.
 If the alias refers to a password without a username, the password is treated as the accessToken.
      
    
    
      
        Username for authentication to mail server.
      
    
    
      
        Password for authentication to mail server.
      
    
    
      
        Folder (subfolder of root or of inbox) to look for mails. If empty, the inbox folder is used
      
    
    
      
        Comma separated list of fields to try as response address Default: replyTo,from,sender,Return-Path
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
      
        the name of the javascript file containing the functions to run
      
    
    
      
        the name of the javascript function that will be called (first) Default: main
      
    
    
      
        the name of the JavaScript engine to use. Default: J2V8
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
  
  
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
      
        If set, input is taken from this session key, instead of regular input
      
    
    
      
        If set, this fixed value is taken as input, instead of regular input
      
    
    
      
        If set <code>true</code>, the input of a pipe is restored before processing the next one Default: false
      
    
    
      
        If set, the result is stored under this session key
      
    
    
      
        If set, the input is stored under this session key
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        When <code>true</code>, the xml result of the transformation is converted back to json Default: true
      
    
    
      
        Namespace definitions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions Default: j=http://www.w3.org/2013/XSL/json
      
    
  
  
    
    
      
        If true, then this sender will process the XSLT while streaming in a different thread. Can be used to switch streaming off for debugging purposes Default: set by appconstant xslt.streaming.default
      
    
    
      
        Location of stylesheet to apply to the input message
      
    
    
      
        Session key to retrieve stylesheet location. Overrides stylesheetName or xpathExpression attribute
      
    
    
      
        Size of cache of stylesheets retrieved from styleSheetNameSessionKey Default: 100
      
    
    
      
        Alternatively: XPath-expression to create stylesheet from
      
    
    
      
        Omit the XML declaration on top of the output. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code>, any output is reparsed before being handled as XML again. If not set, the stylesheet is searched for <code>@disable-output-escaping='yes'</code> and the value is set accordingly Default: false, if not set in stylesheet
      
    
    
      
        For xpathExpression only Default: text
      
      
        
      
    
    
      
        If set <code>true</code>, result is pretty-printed. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code> namespaces (and prefixes) in the input message are removed before transformation Default: false
      
    
    
      
        If set <code>true</code>, the transformer is enabled to handle lexical events, allowing it for example to process comments and to distinghuish CDATA from escaped text.
 Beware that this option can cause spurious NullPointerExceptions due to a race condition in streaming XSLT 1.0 processing in Xalan 2.7.2 Default: false
      
    
    
      
        If set <code>true</code> empty tags in the output are removed after transformation Default: false
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
    
    
  
  
    
    
    
  
  
    
      
        If true, then this sender will process the XSLT while streaming in a different thread. Can be used to switch streaming off for debugging purposes Default: set by appconstant xslt.streaming.default
      
    
    
      
        Location of stylesheet to apply to the input message
      
    
    
      
        Session key to retrieve stylesheet location. Overrides stylesheetName or xpathExpression attribute
      
    
    
      
        Size of cache of stylesheets retrieved from styleSheetNameSessionKey Default: 100
      
    
    
      
        Alternatively: XPath-expression to create stylesheet from
      
    
    
      
        Omit the XML declaration on top of the output. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code>, any output is reparsed before being handled as XML again. If not set, the stylesheet is searched for <code>@disable-output-escaping='yes'</code> and the value is set accordingly Default: false, if not set in stylesheet
      
    
    
      
        Namespace defintions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions. For some other use cases (NOT xpathExpression), one entry can be without a prefix, that will define the default namespace.
 If left empty, an the xpathExpression will match any namespace
      
    
    
      
        For xpathExpression only Default: text
      
      
        
      
    
    
      
        If set <code>true</code>, result is pretty-printed. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code> namespaces (and prefixes) in the input message are removed before transformation Default: false
      
    
    
      
        If set <code>true</code>, the transformer is enabled to handle lexical events, allowing it for example to process comments and to distinghuish CDATA from escaped text.
 Beware that this option can cause spurious NullPointerExceptions due to a race condition in streaming XSLT 1.0 processing in Xalan 2.7.2 Default: false
      
    
    
      
        If set <code>true</code> empty tags in the output are removed after transformation Default: false
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        Specifies LDAP operation to perform Default: read
      
      
        
      
    
    
      
        URL to context to search in, e.g. 'ldap://edsnlm01.group.intranet/ou=people, o=ing' to search in te people group of ing cds. Used to overwrite the providerURL specified in jmsRealm.
      
    
    
      
        Specifies subject to perform operation on. Default: attribute
      
      
        
      
    
    
      
        Comma separated list of attributes to return. When no are attributes specified, all the attributes from the object read are returned. Default: <i>all attributes</i>
      
    
    
      
        Specifies whether connection pooling is used or not Default: true when principal not set as parameter, false otherwise
      
    
    
      
        Specifies the time (in ms) that is spent searching for results for operation search Default: 20000
      
    
    
      
        Key of session variable used to store cause of errors Default: errorReason
      
    
    
      
        The maximum number of entries to be returned by a search query, or <code>0</code> for unlimited Default: 0
      
    
    
      
        When <code>true</code> the attributes passed by the input xml are scanned for an attribute with id unicodepwd, when found the value of this attribute will be encoded as required by active directory (a UTF-16 encoded unicode string containing the password surrounded by quotation marks) before sending it to the LDAP server Default: false
      
    
    
      
        (Only used when <code>operation=search/deepsearch</code>) when <code>true</code> the xml '&lt;ldapresult&gt;object not found&lt;/ldapresult&gt;' is returned instead of the PartialResultException 'unprocessed continuation reference(s)' Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Path to the folder that serves as the root of this virtual filesystem. All specifications of folders or files are relative to this root.
 When the root is left unspecified, absolute paths to files and folders can be used
      
    
    
      
        Whether the LocalFileSystem tries to create the root folder if it doesn't exist yet.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        category under which messages are logged Default: name of the sender
      
    
    
      
        level on which messages are logged Default: info
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        Name of the SMTP-host by which the messages are to be send
      
    
    
      
        Port of the SMTP-host by which the messages are to be send Default: 25
      
    
    
      
        When set to true, we ensure TLS is being used Default: false
      
    
  
  
    
    
  
  
    
      
        authAlias used to obtain credentials for authentication
      
    
    
    
      
        password of userid
      
    
    
    
    
      
        Timeout <i>in milliseconds</i> for socket connection timeout and socket i/o timeouts Default: 20000
      
    
    
    
    
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        Comma separated list of sessionKey's to be stored together with the message. Please note: corresponding MessageStoreListener must have the same value for this attribute.
      
    
    
      
        If set to <code>true</code>, the message is stored only if the MessageId is not present in the store yet. Default: <code>true</code>
      
    
    
      
        Set the slotId, an identifier to keep separate the messages inserted
 by different MessageStoreSenders.
 <br/>
 This field should be set.
      
    
  
  
    
    
    
    
    
    
    
    
    
    
    
    
      
        If set to <code>true</code>, the messages are stored compressed Default: true
      
    
    
    
    
    
  
  
    
    
  
  
    
      
        Set the slotId, an identifier to keep separate the messages inserted
 by different JdbcTransactionalStorage instances.
 <br/>
 This field is optional, unless the attribute #onlyStoreWhenMessageIdUnique is
 set to {@code true}.
      
    
    
    
    
    
    
    
    
    
    
    
    
      
        If set to <code>true</code>, the messages are stored compressed Default: true
      
    
    
    
    
    
      
        If set to <code>true</code>, the message is stored only if the MessageId is not present in the store yet. Default: false
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        Name of the table messages are stored in. Default: IBISSTORE
      
    
    
      
        Name of the index, to be used in hints for query optimizer too (only for Oracle). Default: IX_IBISSTORE
      
    
  
  
    
    
  
  
    
      
        The name of the column that contains the primary key of the table Default: MESSAGEKEY
      
    
    
      
        The name of the column messageIds are stored in Default: MESSAGEID
      
    
    
      
        The name of the column correlation-ids are stored in Default: CORRELATIONID
      
    
    
      
        The name of the column message themselves are stored in Default: MESSAGE
      
    
    
      
        The name of the column the timestamp is stored in Default: MESSAGEDATE
      
    
    
      
        The name of the column comments are stored in Default: COMMENTS
      
    
    
      
        The name of the column the timestamp for expiry is stored in Default: EXPIRYDATE
      
    
    
      
        The name of the column labels are stored in Default: LABEL
      
    
    
      
        Prefix to be prefixed on all database objects (tables, indices, sequences), e.g. to access a different Oracle schema
      
    
    
      
        
      
    
    
      
        Regular expression to mask strings in the errorStore/logStore.
 Every character between to the strings in this expression will be replaced by a '*'.
 <br/>
 For example, the regular expression (?&lt;=&lt;party&gt;).*?(?=&lt;/party&gt;) will replace every
 character between keys &lt;party&gt; and &lt;/party&gt;
 <br/>
 When no hideRegex is configured on the errorStore / logStore but is configured on the org.frankframework.receivers.Receiver#setHideRegex(String),
 then the Receiver's hideRegex is used for the errorStore / logStore.
      
    
    
      
        (Only used when hideRegex is not empty) Specifies the way to hide Default: ALL
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The MongoDB datasource Default: mongodb.datasource.default
      
    
    
      
        Database to connect to. Can be overridden by parameter database
      
    
    
      
        Collection to act upon. Can be overridden by parameter collection
      
    
    
      
        Action
      
      
        
      
    
    
      
        Filter. Can contain references to parameters between ?{ and }. Can be overridden by parameter filter
      
    
    
      
        Limit to number of results returned. A value of 0 means 'no limit'. Can be overridden by parameter limit. Default: 0
      
    
    
      
        Only for find operation: return only the count and not the full document(s) Default: false
      
    
    
      
        OutputFormat Default: JSON
      
      
        
      
    
    
      
        Format the output in easy legible way (currently only for XML)
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
    
    
  
  
    
      
        Only works in combination with the UPLOAD action. If set, and not specified as parameter, the sender will sign the file to be uploaded.
      
      
        
      
    
    
      
        NetStorage action to be used
      
      
        
      
    
    
      
        At the time of writing, NetStorage only supports version 1 Default: 1
      
    
    
      
        NetStorage CP Code of the storage group
      
    
    
      
        The destination URL for the Akamai NetStorage. (Only the hostname, without CpCode; eq. xyz-nsu.akamaihd.net)
      
    
    
      
        Login is done via a Nonce and AccessToken
      
    
    
      
        Version to validate queries made to NetStorage backend. Default: 5
      
    
    
      
        Login is done via a Nonce and AccessToken
      
    
    
      
        Root directory (appended to the url + cpCode)
      
    
    
      
        Alias used to obtain credentials for nonce (username) and accesstoken (password)
      
    
  
  
    
    
    
    
    
    
    
    
    
      
        (Only used when xHtml=<code>true</code>) stylesheet to apply to the HTML response
      
    
    
    
    
      
        The functional name of the object.
      
    
    
      
        Timeout in ms of obtaining a connection/result. Default: 10000
      
    
    
    
    
      
        Username used for authentication to the host
      
    
    
      
        Password used for authentication to the host
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
      
        Set the upper limit to the amount of concurrent threads that can be run simultaneously. Use 0 to disable. Default: 0
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
    
    
  
  
    
      
        reload the configuration regardless of the version Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        type of the optional status field which is set after the row is written to the file: timestamp
      
    
    
      
        Key of session variable that contains the name of the file to use.
      
    
    
      
        If set <code>true</code> and the file already exists, the resultset rows are written to the end of the file. Default: false
      
    
    
      
        If set (and &gt;=0), this session key contains the maximum number of records which are processed.
 If <code>query</code> contains a group field (3), then also following records with the same group field value as the last record are processed
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The destination, aka smb://xxx/yyy share
      
    
    
      
        The SMB share username
      
    
    
      
        The SMB share password
      
    
    
      
        Alias used to obtain credentials for the SMB share
      
    
    
      
        logon/authentication domain, in case the user account is bound to a domain such as Active Directory.
      
    
    
      
        when <code>true</code>, intermediate directories are created also Default: false
      
    
    
      
        controls whether hidden files are seen or not Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Hostname of the SMB share.
      
    
    
      
        Port to connect to. Default: 445
      
    
    
      
        Type of the authentication either 'NTLM' or 'SPNEGO'.
 When setting SPNEGO, the host must use the FQDN, and must be registered on the KDC with a valid SPN. Default: SPNEGO
      
      
        
      
    
    
      
        alias used to obtain credentials for the smb share
      
    
    
      
        the smb share username
      
    
    
      
        the smb share password
      
    
    
      
        NTLM only: logon/authentication domain, in case the user account is bound to a domain such as Active Directory.
      
    
    
      
        May not contain '\\' characters. The destination share, aka smb://xxx/yyy share.
      
    
    
      
        SPNEGO only:
 Key Distribution Center, typically hosted on a domain controller.
 Stored in <code>java.security.krb5.kdc</code>
      
    
    
      
        SPNEGO only:
 Kerberos Realm, case sensitive. Typically upper case and the same as the domain name.
 An Active Directory domain acts as a Kerberos Realm.
 Stored in <code>java.security.krb5.realm</code>
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        If <code>false</code>, the sender operates in RR mode: the a reply is expected from SAP, and the sender does not participate in a transaction. When <code>false</code>, the sender operates in FF mode: no reply is expected from SAP, and the sender joins the transaction, that must be present. The SAP transaction is committed right after the XA transaction is completed. Default: false
      
    
    
      
        Name of the RFC-function to be called in the SAP system
      
    
    
      
        Name of the parameter used to obtain the functionName from if the attribute <code>functionName</code> is empty Default: functionName
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        expression that generates the cron trigger
      
    
    
      
        job group in which the new trigger is to be created (optional)
      
    
    
      
        pattern that leads to the name of the registered trigger(optional)
      
    
    
      
        java listener to be called when scheduler trigger fires
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Timeout in ms of obtaining a connection/result. Default: 10000
      
    
    
      
        The maximum number of concurrent connections Default: 10
      
    
    
      
        The maximum number of times the execution is retried Default: 1 (for repeatable messages) else 0
      
    
    
      
        Proxy host
      
    
    
      
        Proxy port Default: 80
      
    
    
      
        Alias used to obtain credentials for authentication to proxy
      
    
    
      
        Proxy username
      
    
    
      
        Proxy password
      
    
    
      
        Proxy realm
      
    
    
      
        resource URL to keystore or certificate to be used for authentication. If none specified, the JVMs default keystore will be used.
      
    
    
      
        Type of keystore Default: pkcs12
      
      
        
      
    
    
      
        Authentication alias used to obtain keystore password
      
    
    
      
        Default password to access keystore
      
    
    
      
        Alias to obtain specific certificate or key in keystore
      
    
    
      
        Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
      
    
    
      
        Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        Resource URL to truststore to be used for authenticating peer. If none specified, the JVMs default truststore will be used.
      
    
    
      
        Type of truststore Default: jks
      
      
        
      
    
    
      
        Authentication alias used to obtain truststore password
      
    
    
      
        Default password to access truststore
      
    
    
      
        Trust manager algorithm. Can be left empty to use the servers default algorithm
      
    
    
      
        If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
      
    
    
      
        If <code>true</code>, self signed certificates are accepted Default: false
      
    
    
      
        If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
      
    
    
      
        If <code>true</code>, a redirect request will be honoured, e.g. to switch to HTTPS Default: true
      
    
    
      
        Controls whether connections checked to be stale, i.e. appear open, but are not. Default: true
      
    
    
      
        Used when StaleChecking=<code>true</code>. Timeout after which an idle connection will be validated before being used. Default: 5000 ms
      
    
    
      
        Secure socket protocol (such as 'TLSv1.2') to use when a SSLContext object is generated. Default: TLSv1.2
      
    
  
  
    
    
      
        authAlias used to obtain credentials for authentication
      
    
    
    
      
        password of userid
      
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
    
    
  
  
    
      
        Path of the file or directory to start working. Default: Home folder of the sftp user
      
    
    
      
        Name or ip address of remote host
      
    
    
      
        Port number of remote host Default: 21
      
    
    
      
        Name of the alias to obtain credentials to authenticatie on remote server
      
    
    
      
        Name of the user to authenticatie on remote server
      
    
    
      
        Password to authenticatie on remote server
      
    
    
      
        Proxy hostname
      
    
    
      
        Proxy port Default: 1080
      
    
    
      
        alias to obtain credentials to authenticate on proxy
      
    
    
      
        Default user name in case proxy requires authentication
      
    
    
      
        Default password in case proxy requires authentication
      
    
    
      
        Transport type in case of sftp Default: SOCKS5
      
      
        
      
    
    
      
        Optional preferred encryption from client to server for sftp protocol
      
    
    
      
        Optional preferred encryption from server to client for sftp protocol
      
    
    
      
        Path to private key file for sftp authentication
      
    
    
      
        Name of the alias to obtain credentials for passphrase of private key file
      
    
    
      
        Passphrase of private key file
      
    
    
      
        Path to file with knownhosts
      
    
    
      
        Verify the hosts againt the knownhosts file. Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Name of the sender that is considered that is considered to be the golden standard, i.e. the source of truth. Default: the first sender specified
      
    
    
      
        The sender name which will process the results Default: the last sender specified
      
    
    
      
        If set <code>true</code> the sender will wait for all shadows to have finished. Otherwise the collection of results will happen in a background thread. Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        A SQL statement that calls a stored procedure. The statement should begin with the <code>CALL</code> or <code>EXEC</code>
 SQL keyword depending on SQL dialect. In case of doubt, the safe choice is to always start with <code>CALL</code> and choose Oracle dialect.
      
    
    
      
        The query type. For stored procedures, valid query types are JdbcQuerySenderBase.QueryType#SELECT and JdbcQuerySenderBase.QueryType#OTHER.
 Use JdbcQuerySenderBase.QueryType#SELECT when your stored procedure returns a row set (not supported by Oracle and PostgreSQL).
 Use JdbcQuerySenderBase.QueryType#OTHER when your stored procedure returns values via <code>OUT</code> or <code>INOUT</code> parameters, or does not return
 anything at all.
 <p>
 Using any other value will be rejected.
 </p> Default: OTHER
      
      
        
      
    
  
  
    
    
    
    
    
    
    
    
    
    
    
      
        If set, the SQL dialect in which the queries are written and should be translated from to the actual SQL dialect
      
    
    
    
    
    
    
      
        The type of output. If not set then defaults to old-style XML. If set to XML, new-style XML is used. EXPERIMENTAL: datatypes like numbers are not yet rendered correctly Default: false
      
      
        
      
    
    
  
  
    
    
    
  
  
    
      
        when <code>true</code>, messages sent are put in a soap envelope and the soap envelope is removed from received messages (soap envelope will not be visible to the pipeline) Default: true
      
    
    
      
        the soapactionuri to be set in the requestheader
      
    
    
      
        parameter to obtain the soapactionuri
      
    
    
      
        the encodingstyle to be set in the messageheader
      
    
    
      
        controls whether soap faults generated by the application generate an exception, or are treated as 'normal' messages Default: true
      
    
    
      
        the namespace of the message sent. identifies the service to be called. may be overriden by an actual namespace setting in the message to be sent
      
    
    
      
        parameter to obtain the servicenamespace
      
    
    
      
        namespace defintions to be added in the soap envelope tag. must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions
      
    
    
      
        username used to obtain credentials for authentication to web services security
      
    
    
      
        password used to obtain credentials for authentication to web services security
      
    
    
      
        alias used to obtain credentials for authentication to web services security
      
    
    
      
        when true, the password is sent digested. otherwise it is sent in clear text Default: true
      
    
  
  
    
    
    
    
    
    
    
    
    
    
      
        (Only used when xHtml=<code>true</code>) stylesheet to apply to the HTML response
      
    
    
    
    
      
        The functional name of the object.
      
    
    
      
        Timeout in ms of obtaining a connection/result. Default: 10000
      
    
    
    
    
      
        Authentication alias used for authentication to the host
      
    
    
      
        Username used for authentication to the host
      
    
    
      
        Password used for authentication to the host
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        one of create, append or replace
      
      
        
      
    
    
      
        remote directory is prefixed witht the remote file
      
    
    
      
        
      
    
    
      
        characterset conversion
      
      
        
      
    
    
      
        
      
    
    
      
        name of logfile for xcomtcp to be used
      
    
    
      
        password of user on remote system
      
    
    
      
        port of remote host
      
    
    
      
        set queue off or on
      
    
    
      
        hostname or tcpip adres of remote host
      
    
    
      
        set between 0 (no trace) and 10
      
    
    
      
        set truncation off or on
      
    
    
      
        loginname of user on remote system
      
    
    
      
        remote file to create. if empty, the name is equal to the local file
      
    
    
      
        directory in which to run the xcomtcp command
      
    
    
      
        path to xcomtcp command
      
    
    
    
      
        name of the alias to obtain credentials to authenticatie on remote server
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Full pathname to the XFB script to be executed to transfer the file
      
    
    
    
    
    
    
      
        When set to <code>true</code>, the file is copied before calling the XFB script.
 Reasons to copy the file:
 - XFB will rename the file (prefix it with FXB_) and delete it.
 - On Linux the sticky bit (drwxrws--- wasadmin xfbgw) isn't honoured with a move (only with a copy) (on AIX the sticky bit works for both move and copy).
      
    
    
      
        Prefix for the name of the copied or original filename. When the name of the original file starts with this prefix, it is removed. Otherwise this prefix is added to the filename of the copied file.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
    
  
  
    
      
        The functional name of the object.
      
    
  
  
    
    
  
  
    
      
        Enable full schema grammar constraint checking, including checking which
 may be time-consuming or memory intensive. Currently, particle unique
 attribution constraint checking and particle derivation restriction
 checking are controlled by this option.
 <p>
 see property
 http://apache.org/xml/features/validation/schema-full-checking
 </p> Default: <code>false</code>
      
    
    
      
        Should the XmlValidator throw a PipeRunexception on a validation error. If not, a forward with name 'failure' must be defined. Default: false
      
    
    
      
        If set: key of session variable to store reasons of mis-validation in Default: failureReason
      
    
    
      
        Like <code>reasonSessionKey</code> but stores reasons in xml format and more extensive Default: xmlFailureReason
      
    
    
      
        If set <code>true</code>, the input is assumed to be the name of the file to be validated. Otherwise the input itself is validated Default: false
      
    
    
      
        Characterset used for reading file, only used when <code>validateFile</code> is <code>true</code> Default: utf-8
      
    
    
      
        If set <code>true</code>, send warnings to logging and console about syntax problems in the configured schema('s).
 Alternatively, warnings can be switched off using suppression properties XSD_VALIDATION_WARNINGS_SUPPRESS_KEY, XSD_VALIDATION_ERROR_SUPPRESS_KEY and XSD_VALIDATION_FATAL_ERROR_SUPPRESS_KEY Default: true
      
    
    
      
        Ignore namespaces in the input message which are unknown Default: true when <code>schema</code> or <code>noNamespaceSchemaLocation</code> is used, false otherwise
      
    
    
      
        If set <code>true</code>, the number for caching validators in appConstants is ignored and no caching is done (for this validator only) Default: false
      
    
    
      
        If set to <code>1.0</code>, Xerces's previous XML Schema factory will be used, which would make all XSD 1.1 features illegal. The default behaviour can also be set with <code>xsd.processor.version</code> property. Default: <code>1.1</code>
      
    
    
    
  
  
    
    
    
  
  
  
    
  
  
    
      
        Session key used to refer to collection. Must be specified with another value if multiple CollectorPipes are active at the same time in the same session Default: collection
      
    
  
  
    
    
  
  
    
      
        
          
            
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          Domparser om AFM-XML berichten om te zetten in edifactberichten (voor de backoffice).
        
        
          
            
              
            
          
        
      
      
        
          Sender to work with the Amazon S3 Filesystem.
 <p>
     In addition to regular parameters for filesystem senders, it is possible
     to set custom user-metadata on S3 files by prefixing parameter names with
     FileAttribute..
     This prefix will be not be part of the actual metadata property name.
 </p>
 <p>
     The string value of these parameters will be used as value of the custom metadata attribute.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Sender to obtain information from and write to a CMIS application.


 <p>
 When <code>action</code>=<code>get</code> the input (xml string) indicates the id of the document to get. This input is mandatory.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;id&gt;documentId&lt;/id&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>
 <p>
 When <code>action</code>=<code>delete</code> the input (xml string) indicates the id of the document to get. This input is mandatory.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;id&gt;documentId&lt;/id&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>
 <p>
 When <code>action</code>=<code>create</code> the input (xml string) indicates document properties to set. This input is optional.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;name&gt;Offerte&lt;/name&gt;
      &lt;objectTypeId&gt;NNB_Geldlening&lt;/objectTypeId&gt;
      &lt;mediaType&gt;application/pdf&lt;/mediaType&gt;
      &lt;properties&gt;
         &lt;property name="ArrivedAt" type="datetime" formatString="yyyy-MM-dd'T'HH:mm:ss.SSSz"&gt;2014-11-27T16:43:01.268+0100&lt;/property&gt;
         &lt;property name="ArrivedBy"&gt;HDN&lt;/property&gt;
         &lt;property name="DocumentType"&gt;Geldlening&lt;/property&gt;
      &lt;/properties&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>

 <p>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>name</td><td>mandatory property "cmis:name". If not set the sender attribute fileNameSessionKey is used</td><td>"[unknown]"</td></tr>
 <tr><td>objectTypeId</td><td>mandatory property "cmis:objectTypeId"</td><td>"cmis:document"</td></tr>
 <tr><td>mediaType</td><td>the MIME type of the document to store</td><td>"application/octet-stream"</td></tr>
 <tr><td>property</td><td>custom document property to set. Possible attributes:
 <table border="1">
 <tr><th>name</th><th>description</th><th>default</th></tr>
 <tr><td>type</td><td>
 <ul>
 <li><code>string</code>: renders the value</li>
 <li><code>datetime</code>: converts the value to a Date, by default using formatString <code>yyyy-MM-dd HH:mm:ss</code></li>
 </ul>
 </td><td>string</td></tr>
 <tr><td>formatString</td><td>used in combination with <code>datetime</code></td><td>yyyy-MM-dd HH:mm:ss</td></tr>
 </table></td><td>&nbsp;</td></tr>
 </table>
 </p>
 <p>
 When <code>action</code>=<code>find</code> the input (xml string) indicates the query to perform.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;query&gt;
      &lt;statement&gt;select * from cmis:document&lt;/statement&gt;
      &lt;maxItems&gt;10&lt;/maxItems&gt;
      &lt;skipCount&gt;0&lt;/skipCount&gt;
      &lt;searchAllVersions&gt;true&lt;/searchAllVersions&gt;
      &lt;includeAllowableActions&gt;true&lt;/includeAllowableActions&gt;
   &lt;/query&gt;
 </code></pre>
 </p>
 <p>
 When <code>action</code>=<code>update</code> the input (xml string) indicates document properties to update.
 </p>
 <p>
 <b>Example:</b>
 <pre><code>
   &lt;cmis&gt;
      &lt;id&gt;123456789&lt;/id&gt;
      &lt;properties&gt;
         &lt;property name="ArrivedAt" type="datetime" formatString="yyyy-MM-dd'T'HH:mm:ss.SSSz"&gt;2014-11-27T16:43:01.268+0100&lt;/property&gt;
         &lt;property name="ArrivedBy"&gt;HDN&lt;/property&gt;
         &lt;property name="DocumentType"&gt;Geldlening&lt;/property&gt;
      &lt;/properties&gt;
   &lt;/cmis&gt;
 </code></pre>
 </p>

 <p>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>id</td><td>mandatory property "cmis:objectId" which indicates the document to update</td><td>&nbsp;</td></tr>
 <tr><td>property</td><td>custom document property to update. See <code>action</code>=<code>create</code> for possible attributes</td><td>&nbsp;</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Sender that executes either its input or a fixed line, with all parametervalues appended, as a command.
        
        
          
            
              
            
          
        
      
      
        
          Sender that sleeps for a specified time, which defaults to 5000 msecs.
 Useful for testing purposes.
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that interprets the input message as a query, possibly with attributes.
 Messages are expected to contain sql-text.
        
        
          
            
              
            
          
        
      
      
        
          Echos input to output.
        
        
          
            
              
            
          
        
      
      
        
          ESB (Enterprise Service Bus) extension of JmsSender.
        
        
          
            
              
            
          
        
      
      
        
          Implementation of a FileSystemSender that enables to manipulate messages in an Exchange folder.
        
        
          
            
              
            
          
        
      
      
        
          FileSystem Sender extension to handle Attachments.
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that assumes a fixed query, possibly with attributes.

 <p><b>NOTE:</b> See DB2XMLWriter for ResultSet!</p>
        
        
          
            
              
            
          
        
      
      
        
          FixedResultSender, same behaviour as FixedResultPipe, but now as a ISender.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Sender for the HTTP protocol using HttpMethod. By default, any response code outside the 2xx or 3xx range
 is considered an error and the <code>exception</code> forward of the SenderPipe is followed if present and if there
 is no forward for the specific HTTP status code. Forwards for specific HTTP codes (e.g. "200", "201", ...)
 are returned by this sender, so they are available to the SenderPipe.

 <p><b>Expected message format:</b></p>
 <p>GET methods expect a message looking like this:
 <pre>
    param_name=param_value&another_param_name=another_param_value
 </pre>
 <p>POST AND PUT methods expect a message similar as GET, or looking like this:
 <pre>
   param_name=param_value
   another_param_name=another_param_value
 </pre>

 Note:
 When used as MTOM sender and MTOM receiver doesn't support Content-Transfer-Encoding "base64", messages without line feeds will give an error.
 This can be fixed by setting the Content-Transfer-Encoding in the MTOM sender.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          JMS sender which will add an IMS header to the message and call the MQ specific logic.

 <p>See JmsSender for configuration</p>
        
        
          
            
              
            
          
        
      
      
        
          Posts a message to another IBIS-adapter or application in the same JVM using IbisServiceDispatcher.

 An IbisJavaSender makes a call to a Receiver with a JavaListener
 or any other application in the same JVM that has registered a <code>RequestProcessor</code> with the IbisServiceDispatcher.

 <h4>configuring IbisJavaSender and JavaListener</h4>
 <ul>
   <li>Define a SenderPipe with an IbisJavaSender</li>
   <li>Set the attribute <code>serviceName</code> to <i>yourExternalServiceName</i></li>
 </ul>
 In the Adapter to be called:
 <ul>
   <li>Define a Receiver with a JavaListener</li>
   <li>Set the attribute <code>serviceName</code> to <i>yourExternalServiceName</i></li>
 </ul>
 N.B. Please make sure that the IbisServiceDispatcher-1.4.jar or newer is present on the class path of the server.
        
        
          
            
              
            
          
        
      
      
        
          Posts a message to another IBIS-adapter in the same IBIS instance. If the callee exits with an &lt;<code>exit</code>&gt;
 that has state PipeLine.ExitState#ERROR, an error is considered to happen
 in the caller which means that the <code>exception</code> forward is followed if it is present.
 <p/>
 <p/>
 Returns exit.code as forward name to SenderPipe provided that exit.code can be parsed as integer.
 For example, if the called adapter has an exit state with code
 <code>2</code>, then the SenderPipe supports a forward with name <code>2</code>
 that is followed when the called adapter exits with the mentioned exit. This does not work if the code is for example <code>c2</code>.
 <p/>
 <p/>
 An IbisLocalSender makes a call to a Receiver with either a WebServiceListener
 or a JavaListener.



 <h3>Configuration of the Adapter to be called</h3>
 A call to another Adapter in the same IBIS instance is preferably made using the combination
 of an IbisLocalSender and a JavaListener. If,
 however, a Receiver with a WebServiceListener is already present, that can be used in some cases, too.

 <h4>configuring IbisLocalSender and JavaListener</h4>
 <ul>
   <li>Define a SenderPipe with an IbisLocalSender</li>
   <li>Set the attribute <code>javaListener</code> to <i>yourServiceName</i></li>
   <li>Do not set the attribute <code>serviceName</code></li>
 </ul>
 In the Adapter to be called:
 <ul>
   <li>Define a Receiver with a JavaListener</li>
   <li>Set the attribute <code>name</code> to <i>yourServiceName</i></li>
   <li>Do not set the attribute <code>serviceName</code>, except if the service is to be called also
       from applications other than this IBIS-instance</li>
 </ul>

 <h4>configuring IbisLocalSender and WebServiceListener</h4>

 <ul>
   <li>Define a SenderPipe with an IbisLocalSender</li>
   <li>Set the attribute <code>serviceName</code> to <i>yourIbisWebServiceName</i></li>
   <li>Do not set the attribute <code>javaListener</code></li>
 </ul>
 In the Adapter to be called:
 <ul>
   <li>Define a Receiver with a WebServiceListener</li>
   <li>Set the attribute <code>name</code> to <i>yourIbisWebServiceName</i></li>
 </ul>
        
        
          
            
              
            
          
        
      
      
        
          Requires the net.bankid.merchant.library V1.2.9
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Sender used to run JavaScript code using `JavascriptEngine` implementations.
 <p>
 This sender can execute a function of a given Javascript file, the result of the function will be the output of the sender.
 The parameters of the Javascript function to run are given as parameters by the adapter configuration
 The sender doesn't accept nor uses the given input, instead for each argument for the #jsFunctionName method,
 you will need to create a parameter on the sender.
 </p>
 <p>
 The result of the Javascript function should be of type String, or directly convertible to String from a primitive type
 or an array of primitive types / strings, as the output of the sender will be of type String.
 </p>
 <p>
 Failure to ensure the output is a string may mean the result will look like {@code [Object object]}.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          This class sends messages with JMS.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XSLT transformation with a specified stylesheet on a JSON input, yielding JSON, yielding JSON, XML or text.
 JSON input is transformed into XML map, array, string, integer and boolean elements, in the namespace http://www.w3.org/2013/XSL/json.
 The XSLT stylesheet or XPathExpression operates on these element.
        
        
          
            
              
            
          
        
      
      
        
          Sender to obtain information from and write to an LDAP Directory.
 Returns the set of attributes in an XML format. Examples are shown below.

 <h2>example</h2>
 Consider the following configuration example:
 <code>
 <pre>
   &lt;sender
        className="org.frankframework.ldap.LdapSender"
        ldapProviderURL="ldap://servername:389/o=ing"
        operation="read"
        attributesToReturn="givenName,sn,telephoneNumber" &gt;
     &lt;param name="entryName" xpathExpression="entryName" /&gt;
   &lt;/sender&gt;
 </pre>
 </code>
 <br/>

 This may result in the following output:
 <code><pre>
 &lt;ldap&gt;
	&lt;entryName&gt;uid=srp,ou=people&lt;/entryName&gt;

	&lt;attributes&gt;
		&lt;attribute attrID="givenName"&gt;
			&lt;value&gt;Jan&lt;/value&gt;
		&lt;/attribute&gt;

		&lt;attribute attrID="telephoneNumber"&gt;
			&lt;value&gt;010 5131123&lt;/value&gt;
			&lt;value&gt;06 23456064&lt;/value&gt;
		&lt;/attribute&gt;

		&lt;attribute attrID="sn"&gt;
			&lt;value&gt;Jansen&lt;/value&gt;
		&lt;/attribute&gt;
	&lt;/attributes&gt;
 &lt;/ldap&gt;
  </pre></code> <br/>

 Search or Read?

 Read retrieves all the attributes of the specified entry.

 Search retrieves all the entries of the specified (by entryName) context that have the specified attributes,
 together with the attributes. If the specified attributes are null or empty all the attributes of all the entries within the
 specified context are returned.

 Sample result of a <code>read</code> operation:<br/><code><pre>
	&lt;attributes&gt;
	    &lt;attribute&gt;
	    &lt;attribute name="employeeType" value="Extern"/&gt;
	    &lt;attribute name="roomNumber" value="DP 2.13.025"/&gt;
	    &lt;attribute name="departmentCode" value="358000"/&gt;
	    &lt;attribute name="organizationalHierarchy"&gt;
	        &lt;item value="ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=000001,ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	    &lt;/attribute>
	    &lt;attribute name="givenName" value="Gerrit"/>
	&lt;/attributes&gt;

 </pre></code> <br/>
 Sample result of a <code>search</code> operation:<br/><code><pre>
	&lt;entries&gt;
	 &lt;entry name="uid=srp"&gt;
	   &lt;attributes&gt;
	    &lt;attribute&gt;
	    &lt;attribute name="employeeType" value="Extern"/&gt;
	    &lt;attribute name="roomNumber" value="DP 2.13.025"/&gt;
	    &lt;attribute name="departmentCode" value="358000"/&gt;
	    &lt;attribute name="organizationalHierarchy"&gt;
	        &lt;item value="ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	        &lt;item value="ou=000001,ou=OPS&amp;IT,ou=NL,ou=ING-EUR,ou=Group,ou=Organization,o=ing"/&gt;
	    &lt;/attribute>
	    &lt;attribute name="givenName" value="Gerrit"/>
	   &lt;/attributes&gt;
	  &lt;/entry&gt;
   &lt;entry&gt; .... &lt;/entry&gt;
   .....
	&lt;/entries&gt;
 </pre></code> <br/>
        
        
          
            
              
            
          
        
      
      
        
          Sender to work with the server local filesystem.
 <p>
     In addition to regular parameters for filesystem senders, it is possible
     to set custom extended attributes on files by prefixing parameter names with
     FileAttribute..
     This prefix will be not be part of the actual metadata property name.
 </p>
 <p>
     The string value of these parameters will be used as value of the custom metadata attribute.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Sender that just logs its message.
        
        
          
            
              
            
          
        
      
      
        
          JMS sender which will call IBM WebSphere MQ specific
 setTargetClient(JMSC.MQJMS_CLIENT_NONJMS_MQ) on the destination prior to
 sending a message. This is needed when the MQ destination is not a JMS
 receiver otherwise format errors occur (e.g. dots are added after every
 character in the message).

 <p>See JmsSender for configuration</p>
        
        
          
            
              
            
          
        
      
      
        
          sender that sends a mail specified by an XML message.
 <p>
 Sample email.xml:
 <code><pre>
    &lt;email&gt;
       &lt;recipients&gt;
          &lt;recipient type="to"&gt;***@hotmail.com&lt;/recipient&gt;
          &lt;recipient type="cc"&gt;***@gmail.com&lt;/recipient&gt;
       &lt;/recipients&gt;
       &lt;from name="*** ***"&gt;***@yahoo.com&lt;/from&gt;
       &lt;subject&gt;This is the subject&lt;/subject&gt;
       &lt;threadTopic&gt;subject&lt;/threadTopic&gt;
       &lt;message&gt;This is the message&lt;/message&gt;
       &lt;messageType&gt;text/plain&lt;/messageType&gt;&lt;!-- Optional --&gt;
       &lt;messageBase64&gt;false&lt;/messageBase64&gt;&lt;!-- Optional --&gt;
       &lt;charset&gt;UTF-8&lt;/charset&gt;&lt;!-- Optional --&gt;
       &lt;attachments&gt;
          &lt;attachment name="filename1.txt"&gt;This is the first attachment&lt;/attachment&gt;
          &lt;attachment name="filename2.pdf" base64="true"&gt;JVBERi0xLjQKCjIgMCBvYmoKPDwvVHlwZS9YT2JqZWN0L1N1YnR5cGUvSW1...vSW5mbyA5IDAgUgo+PgpzdGFydHhyZWYKMzQxNDY2CiUlRU9GCg==&lt;/attachment&gt;
          &lt;attachment name="filename3.pdf" url="file:/c:/filename3.pdf"/&gt;
          &lt;attachment name="filename4.pdf" sessionKey="fileContent"/&gt;
       &lt;/attachments&gt;&lt;!-- Optional --&gt;
   &lt;/email&gt;
 </pre></code>
 </p><p>
 Notice: the XML message must be valid XML. Therefore, especially the message element
 must be plain text or be wrapped as CDATA. Example:
 <code><pre>
    &lt;message&gt;&lt;![CDATA[&lt;h1&gt;This is a HtmlMessage&lt;/h1&gt;]]&gt;&lt;/message&gt;
 </pre></code>
 </p><p>
 The <code>sessionKey</code> attribute for attachment can contain an inputstream or a string. Other types are not supported at this moment.
 </p><p>
 The attribute order for attachments is as follows:
 <ol>
    <li>sessionKey</li>
    <li>url</li>
    <li><i>value of the attachment element</i></li>
 </ol>
 </p><p>
 The <code>base64</code> attribute is only used when the value of the PipeLineSession variable <code>sessionKey</code> is a String object
 or when the value of the attachment element is used. If <code>base64=true</code> then the value will be decoded before it's used.
 </p><p>
 <b>Compilation and Deployment Note:</b> mail.jar (v1.2) and activation.jar must appear BEFORE j2ee.jar.
 Otherwise errors like the following might occur: <code>NoClassDefFoundException: com/sun/mail/util/MailDateFormat</code>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Send messages to the IBISSTORE database table to have them processed exactly-once by another
 adapter which will read the messages using a MessageStoreListener.
 This other adapter will process the messages asynchronously and (optionally)
 under transaction control. Duplicate messages are ignored based on the
 messageId (except when onlyStoreWhenMessageIdUnique is set to false), hence
 the sender of the message can retry sending the message until a valid reply
 is received in which case it can be certain that the message is stored in the
 database table IBISSTORE.
 <br/><br/>
 If you have a <code>MessageStoreSender</code> it does not make sense to add a <code>JdbcMessageLog</code>
 or <code>JdbcErrorStorage</code> in the same sender pipe. A <code>MessageStoreSender</code>
 acts as a message log and an error store. It can be useful however to add a message log or error store
 to the adapter around the sender pipe, because errors may occur before the message reaches the sender pipe.
 <br/><br/>
 Example configuration:
 <code><pre>
	&lt;SenderPipe name="Send"&gt;
		&lt;MessageStoreSender
			slotId="${instance.name}/TestMessageStore"
			onlyStoreWhenMessageIdUnique="false"
		/&gt;
	&lt;/SenderPipe&gt;
 </pre></code>
        
        
          
            
              
            
          
        
      
      
        
          Sender to perform action on a MongoDB database.
        
        
          
            
              
            
          
        
      
      
        
          MQTT listener which will connect to a broker and subscribe to a topic.

 Links to <a href="https://www.eclipse.org/paho/files/javadoc" target="_blank">https://www.eclipse.org/paho/files/javadoc</a> are opened in a new window/tab because the response from eclipse.org contains header X-Frame-Options:SAMEORIGIN which will make the browser refuse to open the link inside this frame.
        
        
          
            
              
            
          
        
      
      
        
          Sender for Akamai NetStorage (HTTP based).

 <p>See HttpSenderBase for more arguments and parameters!</p>


 <p><b>AuthAlias:</b></p>
 <p>If you do not want to specify the nonce and the accesstoken used to authenticate with Akamai, you can use the authalias property. The username represents the nonce and the password the accesstoken.</p>
        
        
          
            
              
            
          
        
      
      
        
          Collection of Senders, that are executed all at the same time.
        
        
          
            
              
            
          
        
      
      
        
          Wrapper for senders, that opens the wrapped sender at runtime before each sender action, and closes it afterwards.
 This prevents (long) open connections inside Senders and possible connection failures.

 <b>Example:</b>
 <pre><code>
   &lt;SenderPipe&gt;
     &lt;ReconnectSenderWrapper&gt;
        &lt;EchoSender myAttribute="myValue" /&gt;
     &lt;/ReconnectSenderWrapper&gt;
   &lt;/SenderPipe&gt;
 </code></pre>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Performs a reload on database configuration.

 <p>It is possible to set the name of the configuration with the parameter 'name'.</p>
 <p>You can dynamically set 'forceReload' attribute with the parameter 'forceReload'.</p>
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that writes each row in a ResultSet to a file.
        
        
          
            
              
            
          
        
      
      
        
          Uses the (old) SMB 1 protocol.
 <br/>
 Only supports NTLM authentication.
        
        
          
            
              
            
          
        
      
      
        
          Uses the (newer) SMB 2 and 3 protocol.

 Possible error codes:
 <br/>
 Pre-authentication information was invalid (24) or Identifier doesn't match expected value (906): login information is incorrect
 Server not found in Kerberos database (7): Verify that the hostname is the FQDN and the server is using a valid SPN.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Registers a trigger in the scheduler so that the message is send to a javalistener
 at a scheduled time.
        
        
          
            
              
            
          
        
      
      
        
          Sender that sends a mail via SendGrid v3 (cloud-based SMTP provider).

 Sample XML file can be found in the path: iaf-core/src/test/resources/emailSamplesXML/emailSample.xml
        
        
          
            
              
            
          
        
      
      
        
          Series of Senders, that are executed one after another.
        
        
          
            
              
            
          
        
      
      
        
          Wrapper for senders, that allows to get input from a session variable, and to store output in a session variable.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Collection of Senders, that are executed all at the same time. Once the results are processed, all results will be sent to the resultSender,
 while the original sender will return its result to the pipeline.

 <p>Multiple sub-senders can be configured within the ShadowSender, the minimum amount of senders is 2 (originalSender + resultSender)</p>
        
        
          
            
              
            
          
        
      
      
        
          StoredProcedureQuerySender is used to send stored procedure queries and retrieve the result.

 <p>
     <h3>QueryType settings and OUTPUT parameters</h3>
 The StoredProcedureQuerySender class has the following features:
 <ul>
     <li>It supports setting the output parameters of the stored procedure by setting 'mode' attribute of
     the corresponding 'Param' to 'OUTPUT' or 'INOUT'.</li>
     <li>The queryType can only be 'SELECT' or 'OTHER'.</li>
     <li>Use queryType 'SELECT' when the stored procedure only returns a set of rows, and you need
     the output to be the format as FixedQuerySender (see DB2XMLWriter).</li>
     <li>Use queryType 'OTHER' if the stored procedure has one or more output parameters. With this query type,
     the stored procedure can return a result-set along with returning some values in output parameters.
     Depending on the database, the stored procedure can even returning multiple result sets or a combination
     of result sets as return values, and result sets as REF_CURSOR OUT parameters. </li>
 </ul>
 </p>
 <p>
     All stored procedure parameters that are not fixed, so specified in the query with a {@code ?}, should
     have a corresponding IParameter entry. Output parameters should have {@code mode="OUTPUT"}, or
     {@code mode="INOUT"} depending on how the stored procedure is defined.
 </p>
 <p>
	<h3>Sample Output for queryType=OTHER</h3>
	<h4>Basic Example with Only Simple Output Parameters</h4>
  <code><pre>
	&lt;resultset&gt;
		&lt;result param="r1" type="STRING"&gt;MESSAGE-CONTENTS&lt;/result&gt;
		&lt;result param="r2" type="STRING"&gt;E&lt;/result&gt;
	&lt;/resultset&gt;
  </pre></code>

	<h4>Example with Resultset and Simple Output Parameters</h4>
  <code><pre>
	 &lt;resultset&gt;
		 &lt;result resultNr="1"&gt;
			 &lt;fielddefinition&gt;
				&lt;field name="FIELDNAME"
						  type="columnType"
						  columnDisplaySize=""
						  precision=""
						  scale=""
						  isCurrency=""
						  columnTypeName=""
						  columnClassName=""/&gt;
				 &lt;field ...../&gt;
 		     &lt;/fielddefinition&gt;
			 &lt;rowset&gt;
				 &lt;row number="0"&gt;
					 &lt;field name="TKEY"&gt;MSG-ID&lt;/field&gt;
					 &lt;field name="TCHAR"&gt;E&lt;/field&gt;
					 &lt;field name="TMESSAGE"&gt;MESSAGE-CONTENTS&lt;/field&gt;
					 &lt;field name="TCLOB" null="true"/&gt;
					 &lt;field name="TBLOB" null="true"/&gt;
				 &lt;/row&gt;
                 &lt;row number="1" ...../&gt;
			 &lt;/rowset&gt;
		 &lt;/result&gt;
		 &lt;result param="count" type="INTEGER"&gt;5&lt;/result&gt;
	 &lt;/resultset&gt;
  </pre></code>

	<h4>Example with Simple and Cursor Output Parameters</h4>
	<code><pre>
	&lt;resultset&gt;
		&lt;result param="count" type="INTEGER"&gt;5&lt;/result&gt;
		&lt;result param="cursor1" type="LIST"&gt;
			 &lt;fielddefinition&gt;
				&lt;field name="FIELDNAME"
						  type="columnType"
						  columnDisplaySize=""
						  precision=""
						  scale=""
						  isCurrency=""
						  columnTypeName=""
						  columnClassName=""/&gt;
				 &lt;field ...../&gt;
 		     &lt;/fielddefinition&gt;
			&lt;rowset&gt;
				&lt;row number="0"&gt;
					&lt;field name="TKEY"&gt;MSG-ID&lt;/field&gt;
					&lt;field name="TCHAR"&gt;E&lt;/field&gt;
					&lt;field name="TMESSAGE"&gt;MESSAGE-CONTENTS&lt;/field&gt;
					&lt;field name="TCLOB" null="true"/&gt;
					&lt;field name="TBLOB" null="true"/&gt;
				&lt;/row&gt;
				&lt;row number="1" ..... /&gt;
			&lt;/rowset&gt;
		&lt;/result&gt;
	&lt;/resultset&gt;
	</pre></code>
 </p>
 <p><em>NOTE:</em> Support for stored procedures is currently experimental and changes in the currently produced output-format
 are expected.</p>
        
        
          
            
              
            
          
        
      
      
        
          Sender that sends a message via a WebService.
        
        
          
            
              
            
          
        
      
      
        
          XCom client voor het versturen van files via XCom.
        
        
          
            
              
            
          
        
      
      
        
          Sender for transferring files using the XFB protocol. Assumes sender input is local filename.
 <br/>
 Some comments from Richard Maddox (FTO) about UNIX File permissions:
 <br/>
 <br/>
 In case of AIX or SUN systems we advise the following user and directory permissions:
 <br/>
 <br/>
 SENDING CFT:
 <br/>
 - App_user must have secondary group: xfbgw
 <br/>
 - Folder should have ownership: app_user:xfbgw   (owner:group)
 <br/>
 - Folder should have access rights: 770  (rwx.rwx.---)  so nobody other then app_user and group xfbgw can do something in this folder
 <br/>
 - Folder should have SGID bit set so that all files what is copied to this folder get group ownership xfbgw
 <br/>
 - send file must have rights 660 after putting the file in the send directory.
 <br/>
 <br/>
 RECEIVING CFT:
 <br/>
 - App_user (the application user of customer) should have secondary group: xfbgw
 <br/>
 - Folder should have ownership:  app_user:xfbgw   (owner:group)
 <br/>
 - Folder should have access rights: 770  (rwx.rwx.---)  so nobody other then app_user and group xfbgw can do something in this folder
 <br/>
 - Folder should have SGID bit set, so that all files what is copied to this folder get group ownership xfbgw
 <br/>
 <br/>
 There are of course more solutions to get the job done, but this is the solution we can guarantee.
        
        
          
            
              
            
          
        
      
      
        
          Sender for browsing and removing queue messages (with input and output in a XML message).

 <p>
 When input root element is <code>browse</code> all queue messages are returned.
 </p>
 <p>
 When input root element is <code>remove</code> all queue messages are removed.
 </p>
 <p>
 <b>example (input):</b>
 <code>
 <pre>
   &lt;browse&gt;
      &lt;jmsRealm&gt;qcf&lt;/jmsRealm&gt;
      &lt;destinationName&gt;jms/GetPolicyDetailsRequest&lt;/destinationName&gt;
      &lt;destinationType&gt;QUEUE&lt;/destinationType&gt;
   &lt;/browse>
 </pre>
 </code>
 </p>


 <p>
 <b>example (browse output):</b>
 <code>
 <pre>
   &lt;result&gt;
	    &lt;items count="2"&gt;
	       &lt;item&gt;
	          &lt;timestamp&gt;Thu Nov 20 13:36:31 CET 2014&lt;/timestamp&gt;
	          &lt;messageId&gt;ID:LPAB00000003980-61959-1416486781822-3:5:33:1:1&lt;/messageId&gt;
	          &lt;correlationId&gt;...&lt;/correlationId&gt;
	          &lt;message&gt;&lt;![CDATA[...]]&gt;&lt;/message&gt;
	       &lt;/item&gt;
	       &lt;item&gt;
	          &lt;timestamp&gt;Thu Dec 12 11:59:22 CET 2014&lt;/timestamp&gt;
	          &lt;messageId&gt;ID:LPAB00000003980-58359-1721486799722-3:4:19:1:1&lt;/messageId&gt;
	          &lt;correlationId&gt;...&lt;/correlationId&gt;
	          &lt;message&gt;&lt;![CDATA[...]]&gt;&lt;/message&gt;
	       &lt;/item&gt;
	    &lt;/items&gt;
   &lt;/result&gt;
 </pre>
 </code>
 </p>

 <p>
 <b>example (remove output):</b>
 <code>
 <pre>
   &lt;result&gt;
	    &lt;itemsRemoved&gt;2&lt;/itemsRemoved&gt;
   &lt;/result&gt;
 </pre>
 </code>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          QuerySender that transforms the input message to a query.
 <br/><code><pre>
  select
  delete
  insert
  update - tableName
         - columns [0..1] - column [1..n] - name
                                          - value [0..1]
                                          - type [0..1] one of {string;function;number;datetime;blob;clob;xmldatetime}, string by default
                                          - decimalSeparator [0..1] only applicable for type=number
                                          - groupingSeparator [0..1] only applicable for type=number
                                          - formatString [0..1] only applicable for type=datetime, yyyy-MM-dd HH:mm:ss.SSS by default
         - where [0..1]
         - order [0..1]
 <br/>
  alter - sequenceName
        - startWith
 <br/>
  sql   - type [0..1] one of {select;ddl;other}, other by default
        - query
 <br/>
 </pre></code><br/>
        
        
          
            
              
            
          
        
      
      
        
          Sender that validates the input message against a XML Schema.

 N.B. noNamespaceSchemaLocation may contain spaces, but not if the schema is stored in a .jar or .zip file on the class path.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XSLT transformation with a specified stylesheet or XPath-expression.
        
        
          
            
              
            
          
        
      
      
        
          Sender that writes an entry to a ZipStream, similar to ZipWriterPipe with action='write'.
 Filename and contents are taken from parameters. If one of the parameters is not present, the input message
 is used for either filename or contents.
        
        
          
            
              
            
          
        
      
    
  
  
    
      
        
          
          
          
          
        
      
      
    
  
  
    
      
        
          ESB (Enterprise Service Bus) extension of JmsTransactionalStorage.

 <p>
 Depending on the <code>type</code> of the <code>TransactionalStorage</code>
 one of the following messages is sent:
 <ul>
 <li><code>errorStore</code>:
 ESB.Infrastructure.US.Log.BusinessLog.2.ExceptionLog.1.Action</li>
 <li><code>messageLog</code>:
 ESB.Infrastructure.US.Log.BusinessLog.2.AuditLog.1.Action</li>
 </ul>
 </p>
 <p>
 <b>Configuration </b><i>(where deviating from
 JmsTransactionalStorage)</i><b>:</b>
 <table border="1">
 <tr>
 <th>attributes</th>
 <th>description</th>
 <th>default</th>
 </tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Implements a message log (<code>JdbcMessageLog</code>) or error store (<code>JdbcErrorStorage</code>) that uses database
 table IBISSTORE. A <code>MessageStoreSender</code> and <code>MessageStoreListener</code>
 pair implicitly includes a message log and an error store.
 If you have a <code>MessageStoreSender</code> and <code>MessageStoreListener</code>
 pair it is superfluous to add a <code>JdbcMessageLog</code> or <code>JdbcErrorStorage</code>
 within the same sender pipe or the same receiver.
 <br/><br/>
 <b>Message log:</b> A message log writes messages in persistent storage for logging purposes.
 When a message log appears in a receiver, it also ensures that the same message is only processed
 once, even if a related pushing listener receives the same message multiple times.
 <br/><br/>
 <b>Error store:</b> Appears in a receiver or sender pipe to store messages that could not be processed.
 Storing a message in the error store is the last resort of the Frank!Framework. Many types of listeners and senders
 offer a retry mechanism. Only if several tries have failed, then an optional transaction is not rolled
 back and the message is stored in the error store. Users can retry messages in an error store using the Frank!Console. When
 this is done, the message is processed in the same way as messages received from the original source.
 <br/><br/>
 How does a message log or error store see duplicate messages? The message log or error store
 always appears in combination with a sender or listener. This sender or listener determines
 a key based on the sent or received message. Messages with the same key are considered to
 be the same.
 <br/><br/>
 Storage structure is defined in /IAF_util/IAF_DatabaseChangelog.xml. If these database objects do not exist,
 the Frank!Framework will try to create them.
 <br/><br/>
 N.B. Note on using XA transactions:
 If transactions are used on Oracle, make sure that the database user can access the table SYS.DBA_PENDING_TRANSACTIONS.
 If not, transactions present when the server goes down cannot be properly recovered, resulting in exceptions like:
 <pre>
   The error code was XAER_RMERR. The exception stack trace follows: javax.transaction.xa.XAException
	at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:508)
   </pre>
        
        
          
            
              
            
          
        
      
      
        
          Implements a message log (<code>JmsMessageLog</code>) or error store (<code>JmsErrorStorage</code>) that uses JMS technology.
 <br/><br/>
 <b>Message log:</b> A message log writes messages in persistent storage for logging purposes.
 When a message log appears in a receiver, it also ensures that the same message is only processed
 once, even if a related pushing listener receives the same message multiple times.
 <br/><br/>
 <b>Error store:</b> Appears in a receiver or sender pipe to store messages that could not be processed.
 Storing a message in the error store is the last resort of the Frank!Framework. Many types of listeners and senders
 offer a retry mechanism. Only if several tries have failed, then an optional transaction is not rolled
 back and the message is stored in the error store. Users can retry messages in an error store using the Frank!Console. When
 this is done, the message is processed in the same way as messages received from the original source.
 <br/><br/>
 How does a message log or error store see duplicate messages? The message log or error store
 always appears in combination with a sender or listener. This sender or listener determines
 a key based on the sent or received message. Messages with the same key are considered to
 be the same.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
  
  
    
    
  
  
    
      
        Optional identifier for this storage, to be able to share the physical storage between a number of receivers and pipes.
      
    
    
      
        Possible values are <code>E</code> (error store), <code>M</code> (message store), <code>L</code> (message log for Pipe) or <code>A</code> (message log for Receiver).<br/>
 Receiver will always set type to <code>E</code> for errorStorage and always set type to <code>A</code> for messageLog. SenderPipe will set type to <code>L</code> for messageLog (when type isn't specified).<br/>
 See MessageStoreSender for type <code>M</code>. Default: <code>E</code> for errorStorage on Receiver<br/><code>A</code> for messageLog on Receiver<br/><code>L</code> for messageLog on Pipe
      
    
  
  
    
    
  
  
    
      
        Timeout <i>in milliseconds</i> for receiving a message from the queue Default: 3000
      
    
    
      
        Regular expression to mask strings in the errorStore/logStore.
 Every character between to the strings in this expression will be replaced by a '*'.
 <br/>
 For example, the regular expression (?&lt;=&lt;party&gt;).*?(?=&lt;/party&gt;) will replace every
 character between keys &lt;party&gt; and &lt;/party&gt;
 <br/>
 When no hideRegex is configured on the errorStore / logStore but is configured on the org.frankframework.receivers.Receiver#setHideRegex(String),
 then the Receiver's hideRegex is used for the errorStore / logStore.
      
    
    
      
        (Only used when hideRegex is not empty) Specifies the way to hide Default: ALL
      
      
        
      
    
  
  
    
    
  
  
    
      
        
          
          
          
          
        
      
      
    
  
  
    
      
        
          ESB (Enterprise Service Bus) extension of JmsTransactionalStorage.

 <p>
 Depending on the <code>type</code> of the <code>TransactionalStorage</code>
 one of the following messages is sent:
 <ul>
 <li><code>errorStore</code>:
 ESB.Infrastructure.US.Log.BusinessLog.2.ExceptionLog.1.Action</li>
 <li><code>messageLog</code>:
 ESB.Infrastructure.US.Log.BusinessLog.2.AuditLog.1.Action</li>
 </ul>
 </p>
 <p>
 <b>Configuration </b><i>(where deviating from
 JmsTransactionalStorage)</i><b>:</b>
 <table border="1">
 <tr>
 <th>attributes</th>
 <th>description</th>
 <th>default</th>
 </tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Implements a message log (<code>JdbcMessageLog</code>) or error store (<code>JdbcErrorStorage</code>) that uses database
 table IBISSTORE. A <code>MessageStoreSender</code> and <code>MessageStoreListener</code>
 pair implicitly includes a message log and an error store.
 If you have a <code>MessageStoreSender</code> and <code>MessageStoreListener</code>
 pair it is superfluous to add a <code>JdbcMessageLog</code> or <code>JdbcErrorStorage</code>
 within the same sender pipe or the same receiver.
 <br/><br/>
 <b>Message log:</b> A message log writes messages in persistent storage for logging purposes.
 When a message log appears in a receiver, it also ensures that the same message is only processed
 once, even if a related pushing listener receives the same message multiple times.
 <br/><br/>
 <b>Error store:</b> Appears in a receiver or sender pipe to store messages that could not be processed.
 Storing a message in the error store is the last resort of the Frank!Framework. Many types of listeners and senders
 offer a retry mechanism. Only if several tries have failed, then an optional transaction is not rolled
 back and the message is stored in the error store. Users can retry messages in an error store using the Frank!Console. When
 this is done, the message is processed in the same way as messages received from the original source.
 <br/><br/>
 How does a message log or error store see duplicate messages? The message log or error store
 always appears in combination with a sender or listener. This sender or listener determines
 a key based on the sent or received message. Messages with the same key are considered to
 be the same.
 <br/><br/>
 Storage structure is defined in /IAF_util/IAF_DatabaseChangelog.xml. If these database objects do not exist,
 the Frank!Framework will try to create them.
 <br/><br/>
 N.B. Note on using XA transactions:
 If transactions are used on Oracle, make sure that the database user can access the table SYS.DBA_PENDING_TRANSACTIONS.
 If not, transactions present when the server goes down cannot be properly recovered, resulting in exceptions like:
 <pre>
   The error code was XAER_RMERR. The exception stack trace follows: javax.transaction.xa.XAException
	at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:508)
   </pre>
        
        
          
            
              
            
          
        
      
      
        
          Implements a message log (<code>JmsMessageLog</code>) or error store (<code>JmsErrorStorage</code>) that uses JMS technology.
 <br/><br/>
 <b>Message log:</b> A message log writes messages in persistent storage for logging purposes.
 When a message log appears in a receiver, it also ensures that the same message is only processed
 once, even if a related pushing listener receives the same message multiple times.
 <br/><br/>
 <b>Error store:</b> Appears in a receiver or sender pipe to store messages that could not be processed.
 Storing a message in the error store is the last resort of the Frank!Framework. Many types of listeners and senders
 offer a retry mechanism. Only if several tries have failed, then an optional transaction is not rolled
 back and the message is stored in the error store. Users can retry messages in an error store using the Frank!Console. When
 this is done, the message is processed in the same way as messages received from the original source.
 <br/><br/>
 How does a message log or error store see duplicate messages? The message log or error store
 always appears in combination with a sender or listener. This sender or listener determines
 a key based on the sent or received message. Messages with the same key are considered to
 be the same.
        
        
          
            
              
            
          
        
      
    
  
  
    
      
        
          
            
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          ErrorMessageFormatter that returns a fixed message with replacements.
        
        
          
            
              
            
          
        
      
      
        
          ErrorMessageFormatter that returns a soap fault message.
        
        
          
            
              
            
          
        
      
      
        
          Applies a XSLT-stylesheet to the standard error generated by an ErrorMessageFormatter.

 If the transformation does not succeed, this 'standard' error message is returned and an exception is logged.

 Hint: use <code>xpathExression="/errorMessage/@message"</code> for a single compact string as errormessage.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
  
  
    
      
        returned message
      
    
    
      
        name of the file containing the result message
      
    
    
    
    
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        URL to the stylesheet used to transform the output of the standard ErrorMessageFormatter
      
    
    
      
        xPathExpression to use for transformation
      
    
    
    
  
  
    
      
        
          
            
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          Extension to WsdlXmlValidator for API Management.

 The SOAP header can only contain the following schema (or it's empty):
 <table border="1">
 <tr><th>element</th><th>level</th><th>mandatory</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>yes</td></tr>
 <tr><td>xmlns="http://api.nn.nl/MessageHeader"</td><td>&nbsp;</td><td>yes</td></tr>
 <tr><td>From</td><td>1</td><td>no</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>yes</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>yes</td></tr>
 </table>
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will automatically add the SOAP envelope XSD and the ESB XSD (e.g. a CommonMessageHeader.xsd)
 to the set of XSDs used for validation.
        
        
          
            
              
            
          
        
      
      
        
          FxF XML validator to be used with FxF3. When receiving files
 (direction=receive) the message is validated against the
 OnCompletedTransferNotify WSDL (a P2P connection, hence same WSDL (provided
 by Tibco) for all queues (every Ibis receiving FxF files has it's own
 queue)). When sending files (direction=send) the message is validated against
 the StartTransfer WSDL (ESB service provided by Tibco).
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that validates the XML or JSON input message against a XML Schema and returns either XML or JSON.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that validates the input message against a JSON Schema.
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will automatically add the SOAP envelope XSD to the set of XSD's used for validation.

 Before the <code>outputSoapBody</code> attribute was introduced, two validators were used for a request-reply pattern (an inputValidator for the request and an outputValidator for the reply).
 These inputValidator and outputValidator were identical except for the child element of the SOAP body. Because validators use relatively a lot of memory, the <code>outputSoapBody</code> attribute was added which replaces the outputValidator.
 Both the request and the reply are then validated by the inputValidator.
 <p>To generate a wsdl with a soap action included one of the following properties must be set to the expected soapAction</p>
 <table border="1">
 <tr><td>wsdl.${adapterName}.${listenerName}.soapAction</td></tr>
 <tr><td>wsdl.${adapterName}.soapAction</td></tr>
 <tr><td>wsdl.soapAction</td></tr>
 </table>
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will read the XSD's to use from a WSDL. As it extends the
 SoapValidator is will also add the SOAP envelope XSD.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that validates the input message against an XML Schema.
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that checks the well-formedness of the input message.
 If <code>root</code> is given then this is also checked.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
      
        indicates whether the message is multipart/form-data. If so, the wsdl only represents the first part, other parts are attachments. This attribute is only used for generating the 'real' wsdl which is available in the ibis console (../rest/webservices) Default: false
      
    
  
  
    
    
  
  
    
      
      
      
    
  
  
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
  
  
    
    
  
  
    
    
    
    
  
  
    
    
    
  
  
    
      
        The WSDL to read the XSDs from
      
    
    
      
        Name of the child element of the SOAP body, or a comma separated list of names to choose from (only one is allowed) (WSDL generator will use the first element) (use empty value to allow an empty SOAP body, for example to allow element x and an empty SOAP body use: x,). In case the request contains SOAPAction header and the WSDL contains an element specific to that SOAPAction, it will use that element as SOAP body.
      
    
    
      
        Pairs of URI references which will be added to the WSDL
      
    
    
      
        Creates <code>schemaLocation</code> attribute based on the WSDL and replaces the namespace of the soap body element
      
    
  
  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
      
        Characterset used for reading file, only used when <code>validateFile</code> is <code>true</code> Default: utf-8
      
    
    
    
    
    
    
    
    
    
    
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        Name of the child element of the SOAP body, or a comma separated list of names to choose from (only one is allowed) (wsdl generator will use the first element) (use empty value to allow an empty soap body, for example to allow element x and an empty soap body use: x,)
      
    
    
    
    
    
    
    
  
  
    
    
    
    
    
    
    
    
    
    
    
      
        Characterset used for reading file, only used when <code>validateFile</code> is <code>true</code> Default: utf-8
      
    
    
    
    
    
    
    
    
    
    
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        Only for JSON input: namespace of the resulting XML. Need only be specified when the namespace of root name is ambiguous in the schema
      
    
    
      
        Default format of the result, that is used if the format cannot be found from outputFormatSessionKey or from inputFormatSessionKey (when validating responses and autoFormat=true) Default: XML
      
      
        
      
    
    
      
        Session key to retrieve outputFormat from Default: outputFormat
      
    
    
      
        Session key to store the inputFormat in, to be able to set the outputformat when autoFormat=true. Can also be used to pass the value of an HTTP Accept header, to obtain a properly formatted response Default: Json2XmlValidator.inputFormat &lt;name of the pipe&gt;
      
    
    
      
        If true, the format on 'output' is set to the same as the format of the input message on 'input'. The format of the input message is stored in and retrieved from the session variable specified by outputFormatSessionKey Default: true
      
    
    
      
        If true assume arrays in JSON do not have the element containers like in XML Default: true
      
    
    
      
        If true check that incoming JSON adheres to the specified syntax (compact or full), otherwise both types are accepted for conversion from JSON to XML Default: false
      
    
    
      
        If true, assume that JSON contains/must contain a root element Default: false
      
    
    
      
        If true, and converting from JSON to XML, parameter substitutions are searched for optional sub elements too. By default, only mandatory elements are searched for parameter substitutions. N.B. Currently this option might cause problems. Please try using more qualified parameters names (using '/') first Default: false
      
    
    
      
        If true, and converting from JSON to XML, elements in JSON that are not found in the XML Schema are ignored Default: false
      
    
    
      
        If true, an exception is thrown when a wildcard is found in the XML Schema when parsing an object. This often indicates that an element is not properly typed in the XML Schema, and could lead to ambuigities. Default: true
      
    
    
      
        If true, all XML is allowed to be without namespaces. If no namespaces are detected (by the presence of the string 'xmlns') in the XML, the root namespace is added to the XML Default: false
      
    
    
      
        If true, all XML that is generated is without a namespace set Default: false
      
    
    
      
        If true, and converting to or from JSON, then the message root is the only rootValidation, ignoring root validations like for SOAP envelope and header set by descender classes like SoapValidator Default: true
      
    
    
      
        Allow JSON input Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The filename of the schema on the classpath. It is not possible to specify a namespace using this attribute. (effectively the same as noNamespaceSchemaLocation)
 An example value would be "xml/xsd/GetPartyDetail.xsd".
 The value of the schema attribute is only used if the schemaLocation attribute and the noNamespaceSchemaLocation are not set.
      
    
    
    
    
      
        Name of the root element, or a comma separated list of element names. The validation fails if the root element is not present in the list. N.B. for WSDL generation only the first element is used
      
    
    
    
    
    
    
    
    
      
        Characterset used for reading file, only used when <code>validateFile</code> is <code>true</code> Default: utf-8
      
    
    
    
    
    
    
    
      
        Ignore namespaces in the input message which are unknown Default: true when <code>schema</code> or <code>noNamespaceSchemaLocation</code> is used, false otherwise
      
    
    
    
    
    
  
  
    
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
      
        Name of the root element
      
    
    
      
        Name of the response root element
      
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
  
  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
      
        If set, the processing continues directly at the forward of this pipe, without executing the pipe itself, if the input is empty Default: false
      
    
    
      
        If set, this pipe is only executed when the value of parameter with name <code>ifParam</code> equals <code>ifValue</code> (otherwise this pipe is skipped)
      
    
    
      
        See <code>ifParam</code>
      
    
    
      
        Key of session variable to check if action must be executed. The pipe is only executed if the session variable exists and is not null
      
    
    
      
        Value of session variable 'onlyIfSessionKey' to check if action must be executed. The pipe is only executed if the session variable has the specified value
      
    
    
      
        Key of session variable to check if action must be executed. The pipe is not executed if the session variable exists and is not null
      
    
    
      
        Value of session variable 'unlessSessionKey' to check if action must be executed. The pipe is not executed if the session variable has the specified value
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        
      
    
    
      
        
      
    
    
      
        Only used when <code>mode=reg</code>!</b> Sets the Common Message Header version. 1 or 2 Default: 1
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        
      
    
    
      
        either 3.1 or 3.2 Default: 3.1
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The JSON Schema to validate to
      
    
    
      
        Prefix to element name to find subschema in schema Default: /definitions/
      
    
    
      
        If set: key of session variable to store reasons of mis-validation in Default: failureReason
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        name of the root element
      
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
  
  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
      
        
          
            
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          Extension to WsdlXmlValidator for API Management.

 The SOAP header can only contain the following schema (or it's empty):
 <table border="1">
 <tr><th>element</th><th>level</th><th>mandatory</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>yes</td></tr>
 <tr><td>xmlns="http://api.nn.nl/MessageHeader"</td><td>&nbsp;</td><td>yes</td></tr>
 <tr><td>From</td><td>1</td><td>no</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>yes</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>yes</td></tr>
 </table>
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will automatically add the SOAP envelope XSD and the ESB XSD (e.g. a CommonMessageHeader.xsd)
 to the set of XSDs used for validation.
        
        
          
            
              
            
          
        
      
      
        
          FxF XML validator to be used with FxF3. When receiving files
 (direction=receive) the message is validated against the
 OnCompletedTransferNotify WSDL (a P2P connection, hence same WSDL (provided
 by Tibco) for all queues (every Ibis receiving FxF files has it's own
 queue)). When sending files (direction=send) the message is validated against
 the StartTransfer WSDL (ESB service provided by Tibco).
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that validates the XML or JSON input message against a XML Schema and returns either XML or JSON.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that validates the input message against a JSON Schema.
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will automatically add the SOAP envelope XSD to the set of XSD's used for validation.

 Before the <code>outputSoapBody</code> attribute was introduced, two validators were used for a request-reply pattern (an inputValidator for the request and an outputValidator for the reply).
 These inputValidator and outputValidator were identical except for the child element of the SOAP body. Because validators use relatively a lot of memory, the <code>outputSoapBody</code> attribute was added which replaces the outputValidator.
 Both the request and the reply are then validated by the inputValidator.
 <p>To generate a wsdl with a soap action included one of the following properties must be set to the expected soapAction</p>
 <table border="1">
 <tr><td>wsdl.${adapterName}.${listenerName}.soapAction</td></tr>
 <tr><td>wsdl.${adapterName}.soapAction</td></tr>
 <tr><td>wsdl.soapAction</td></tr>
 </table>
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will read the XSD's to use from a WSDL. As it extends the
 SoapValidator is will also add the SOAP envelope XSD.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that validates the input message against an XML Schema.
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that checks the well-formedness of the input message.
 If <code>root</code> is given then this is also checked.
        
        
          
            
              
            
          
        
      
    
  
  
    
      
        
          
            
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          Extension to SoapWrapperPipe for API Management.
 <p>
 <b>Configuration </b><i>(where deviating from SoapWrapperPipe)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>soapHeaderSessionKey</td><td>if direction=<code>wrap</code>: </td><td>soapHeader</td></tr>
 <tr><td>soapHeaderStyleSheet</td><td>if direction=<code>wrap</code>: </td><td>/xml/xsl/api/soapHeader.xsl</td></tr>
 </table>
 </p><p>
 <b>/xml/xsl/api/soapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td><code>MessageHeader</code> is only created when $conversationId is filled (otherwise skipped)</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td><code>From</code> is only created when $from_in is filled (otherwise skipped) and it's created with the value of $from_out</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://api.nn.nl/MessageHeader"</td></tr>
 <tr><td>from_in</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 <tr><td>from_out</td><td>property 'instance.name'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Extension to SoapWrapperPipe for separate modes.

 <p><b>Configuration </b><i>(where deviating from SoapWrapperPipe)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>mode</td><td>either <code>i2t</code> (ifsa2tibco), <code>reg</code> (regular) or <code>bis</code> (Business Integration Services)</td><td>reg</td></tr>
 <tr><td>cmhVersion</td><td>(only used when <code>mode=reg</code>) Common Message Header version (1 or 2)</td><td>1 when <code>mode=reg</code>, 0 otherwise</td></tr>
 <tr><td>soapHeaderSessionKey</td><td>if direction=<code>unwrap</code>: </td><td>soapHeader</td></tr>
 <tr><td>soapHeaderStyleSheet</td><td>if direction=<code>wrap</code> and mode=<code>i2t</code>:</td><td>/xml/xsl/esb/soapHeader.xsl</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>reg</code>:</td><td>TODO (for now identical to the "<code>i2t</code>" SOAP Header)</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>bis</code>:</td><td>/xml/xsl/esb/bisSoapHeader.xsl</td></tr>
 <tr><td>soapBodyStyleSheet</td><td>if direction=<code>wrap</code> and mode=<code>reg</code>:</td><td>/xml/xsl/esb/soapBody.xsl</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>bis</code>:</td><td>/xml/xsl/esb/bisSoapBody.xsl</td></tr>
 <tr><td>addOutputNamespace</td><td>(only used when <code>direction=wrap</code>) when <code>true</code>, <code>outputNamespace</code> is automatically set using the parameters (if $messagingLayer='P2P' then 'http://nn.nl/XSD/$businessDomain/$applicationName/$applicationFunction' else is serviceContext is not empty 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceContext/$serviceContextVersion/$operationName/$operationVersion' else 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceVersion/$operationName/$operationVersion')</td><td><code>false</code></td></tr>
 <tr><td>retrievePhysicalDestination</td><td>(only used when <code>direction=wrap</code>) when <code>true</code>, the physical destination is retrieved from the queue instead of using the parameter <code>destination</code></td><td><code>true</code></td></tr>
 <tr><td>useFixedValues</td><td>If <code>true</code>, the fields CorrelationId, MessageId and Timestamp will have a fixed value (for testing purposes only)</td><td><code>false</code></td></tr>
 <tr><td>fixResultNamespace</td><td>(only used when <code>direction=wrap</code>) when <code>true</code> and the Result tag already exists, the namespace is changed</td><td><code>false</code></td></tr>
 <tr><td>p2pAlias</td><td>When the messagingLayer part of the destination has this value interpret it as P2P</td><td><code></code></td></tr>
 <tr><td>esbAlias</td><td>When the messagingLayer part of the destination has this value interpret it as ESB</td><td><code></code></td></tr>
 </table></p>
 <p>
 <b>/xml/xsl/esb/soapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>&nbsp;</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Id</td><td>2</td><td>$fromId</td></tr>
 <tr><td>To</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Location</td><td>2</td><td>if $messagingLayer='P2P' then<br/>&nbsp;$messagingLayer.$businessDomain.$applicationName.$applicationFunction.$paradigm<br/>else if $serviceContext is not empty then<br/>&nbsp;$messagingLayer.$businessDomain.$serviceLayer.$serviceName.$serviceContext.$serviceContextVersion.$operationName.$operationVersion.$paradigm<br/>else<br/>&nbsp;$messagingLayer.$businessDomain.$serviceLayer.$serviceName.$serviceVersion.$operationName.$operationVersion.$paradigm</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>CPAId</td><td>2</td><td>$cpaId</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 <tr><td>CorrelationId</td><td>2</td><td>$correlationId (if empty then skip this element)</td></tr>
 <tr><td>MessageId</td><td>2</td><td>$messageId</td></tr>
 <tr><td>ExternalRefToMessageId</td><td>2</td><td>$externalRefToMessageId (if empty then skip this element)</td></tr>
 <tr><td>Timestamp</td><td>2</td><td>$timestamp</td></tr>
 <tr><td>TransactionId</td><td>2</td><td>$transactionId (only used when $mode=reg and $cmhVersion=2; if empty then skip this element)</td></tr>
 <tr><td>Service</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>2</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>2</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>2</td><td>&nbsp;</td></tr>
 <tr><td>Paradigm</td><td>3</td><td>$paradigm</td></tr>
 <tr><td>Name</td><td>3</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>3</td><td>$operationVersion</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>mode</td><td>copied from <code>mode</code></td></tr>
 <tr><td>cmhVersion</td><td>copied from <code>cmhVersion</code></td></tr>
 <tr><td>namespace</td><td>"http://nn.nl/XSD/Generic/MessageHeader/2" (only when $mode=reg and $cmhVersion=2)<br/>"http://nn.nl/XSD/Generic/MessageHeader/1" (otherwise)</td></tr>
 <tr><td>businessDomain</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>service(Context)Version</td><td>1</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 <tr><td>applicationName</td><td>&nbsp;</td></tr>
 <tr><td>applicationFunction</td><td>&nbsp;</td></tr>
 <tr><td>messagingLayer</td><td>ESB</td></tr>
 <tr><td>serviceLayer</td><td>&nbsp;</td></tr>
 <tr><td>destination</td><td>if not empty this parameter contains the preceding parameters as described in 'Location' in the table above</td></tr>
 <tr><td>fromId</td><td>property 'instance.name'</td></tr>
 <tr><td>cpaId</td><td>if applicable, copied from the original (received) SOAP Header, else 'n/a'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header, else parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>messageId</td><td>parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>correlationId</td><td>if $paradigm equals 'Response' then copied from MessageId in the original (received) SOAP Header</td></tr>
 <tr><td>externalRefToMessageId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 <tr><td>timestamp</td><td>parameter pattern '{now,date,yyyy-MM-dd'T'HH:mm:ss}'</td></tr>
 <tr><td>transactionId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/bisSoapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>&nbsp;</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Id</td><td>2</td><td>$fromId</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 <tr><td>MessageId</td><td>2</td><td>$messageId</td></tr>
 <tr><td>ExternalRefToMessageId</td><td>2</td><td>$externalRefToMessageId (if empty then skip this element)</td></tr>
 <tr><td>Timestamp</td><td>2</td><td>$timestamp</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://www.ing.com/CSP/XSD/General/Message_2"</td></tr>
 <tr><td>fromId</td><td>property 'instance.name'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header, else parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>messageId</td><td>parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>externalRefToMessageId</td><td>if applicable, copied from MessageId in the original (received) SOAP Header</td></tr>
 <tr><td>timestamp</td><td>parameter pattern '{now,date,yyyy-MM-dd'T'HH:mm:ss}'</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/soapBody.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>[Payload]</td><td>0</td><td>if $errorCode is empty then the complete payload will be copied and if not already existing a Result tag will be added<br/>else only the root tag will be copied</td></tr>
 <tr><td>Result</td><td>1</td><td>this element will be the last child in the copied root tag (only applicable for $paradigm 'Response'); if $errorCode is empty and a Result tag already exists then skip this element including its child elements</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>Status</td><td>2</td><td>if $errorCode is empty then 'OK'<br/>else 'ERROR'</td></tr>
 <tr><td>ErrorList</td><td>2</td><td>if $errorCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Error</td><td>3</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>4</td><td>$errorCode</td></tr>
 <tr><td>Reason</td><td>4</td><td>if $errorReason is not empty then $errorReason<br/>else it will be derived from $errorCode:
   <table border="1">
   <tr><th>errorCode</th><th>errorText</th></tr>
   <tr><td>ERR6002</td><td>Service Interface Request Time Out</td></tr>
   <tr><td>ERR6003</td><td>Invalid Request Message</td></tr>
   <tr><td>ERR6004</td><td>Invalid Backend system response</td></tr>
   <tr><td>ERR6005</td><td>Backend system failure response</td></tr>
   <tr><td>ERR6999</td><td>Unspecified Errors</td></tr>
  </table>
 </td></tr>
 <tr><td>Service</td><td>4</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>5</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>5</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Paradigm</td><td>6</td><td>$paradigm</td></tr>
 <tr><td>Name</td><td>6</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>6</td><td>$operationVersion</td></tr>
 <tr><td>DetailList</td><td>4</td><td>if $errorDetailCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Detail</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>6</td><td>$errorDetailCode</td></tr>
 <tr><td>Text</td><td>6</td><td>$errorDetailText (if empty then skip this element)</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>mode</td><td>copied from <code>mode</code></td></tr>
 <tr><td>cmhVersion</td><td>copied from <code>cmhVersion</code></td></tr>
 <tr><td>namespace</td><td>"http://nn.nl/XSD/Generic/MessageHeader/2" (only when $mode=reg and $cmhVersion=2)<br/>"http://nn.nl/XSD/Generic/MessageHeader/1" (otherwise)</td></tr>
 <tr><td>errorCode</td><td>&nbsp;</td></tr>
 <tr><td>errorReason</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailCode</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailText</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 <tr><td>fixResultNamespace</td><td>false</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/bisSoapBody.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>[Payload]</td><td>0</td><td>if $errorCode is empty then the complete payload will be copied and if not already existing a Result tag will be added<br/>else only the root tag will be copied</td></tr>
 <tr><td>Result</td><td>1</td><td>this element will be the last child in the copied root tag (only applicable for $paradigm 'Response' and 'Reply'); if $errorCode is empty and a Result tag already exists then skip this element including its child elements</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>Status</td><td>2</td><td>if $errorCode is empty then 'OK'<br/>else 'ERROR'</td></tr>
 <tr><td>ErrorList</td><td>2</td><td>if $errorCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Error</td><td>3</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>4</td><td>$errorCode</td></tr>
 <tr><td>Reason</td><td>4</td><td>if $errorReason is not empty then $errorReason<br/>else it will be derived from $errorCode:
   <table border="1">
   <tr><th>errorCode</th><th>errorText</th></tr>
   <tr><td>ERR6002</td><td>Service Interface Request Time Out</td></tr>
   <tr><td>ERR6003</td><td>Invalid Request Message</td></tr>
   <tr><td>ERR6004</td><td>Invalid Backend system response</td></tr>
   <tr><td>ERR6005</td><td>Backend system failure response</td></tr>
   <tr><td>ERR6999</td><td>Unspecified Errors</td></tr>
  </table>
 </td></tr>
 <tr><td>Service</td><td>4</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>5</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>5</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>6</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>6</td><td>$operationVersion</td></tr>
 <tr><td>DetailList</td><td>4</td><td>if $errorDetailCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Detail</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>6</td><td>$errorDetailCode</td></tr>
 <tr><td>Text</td><td>6</td><td>$errorDetailText (if empty then skip this element)</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://www.ing.com/CSP/XSD/General/Message_2"</td></tr>
 <tr><td>errorCode</td><td>&nbsp;</td></tr>
 <tr><td>errorReason</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailCode</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailText</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          FxF wrapper to be used with FxF3. When receiving files (direction=unwrap)
 the message handed to the pipeline is the local filename extracted from an
 ESB SOAP message. When sending files (direction=wrap) input should be a local
 filename which will be wrapped into an ESB SOAP message. Please note: When
 writing files which need to be send through FxF they should be written to
 ${fxf.dir}/NNX00000/out. The property ${fxf.dir} will automatically be
 available on the OTAP environment (define it in StageSpecifics_LOC.properties
 only). Replace NNX00000 with the specific flowId and generate a unique
 filename (files will automatically be cleaned after 30 days or any other
 value specified by ${fxf.retention}).
        
        
          
            
              
            
          
        
      
      
        
          Pipe to wrap or unwrap a message from/into a SOAP Envelope.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        Default: wrap
      
      
        
      
    
    
      
        Soap version to use Default: auto
      
      
        
      
    
    
      
        (only used when direction=<code>wrap</code>) Namespace of the soap envelope Default: auto determined from soapVersion
      
    
    
      
        Key of session variable to store auto-detected soapNamespace Default: If configured as Pipeline Input Wrapper or PipeLine Output Wrapper: soapNamespace
      
    
    
      
        Key of session variable to store soap header Default: If configured as Pipeline Input Wrapper and direction=<code>unwrap</code>: soapHeader
      
    
    
      
        The encodingStyle to be set in the soap header
      
    
    
      
        The default for the namespace of the message sent. Identifies the service to be called. May be overriden by an actual namespace setting in the message to be sent
      
    
    
      
        (only used when direction=<code>wrap</code>) Stylesheet to create the content of the soap header. As input for this stylesheet a dummy xml string is used. Note: outputType=<code>xml</code> and xsltVersion=
      
    
    
      
        (only used when direction=<code>wrap</code>) Stylesheet to apply to the input message. Note: outputType=<code>xml</code> and xsltVersion=2
      
    
    
      
        (only used when direction=<code>unwrap</code>) If <code>true</code>, namespaces (and prefixes) in the content of the soap body are removed Default: false
      
    
    
      
        (only used when direction=<code>unwrap</code> and <code>removeoutputnamespaces=false</code>) If <code>true</code>, unused namespaces in the content of the soap body are removed Default: true
      
    
    
      
        (only used when direction=<code>wrap</code>) If not empty, this namespace is added to the root element in the soap body
      
    
    
      
        If not empty, the root element in the soap body is changed to this value
      
    
    
      
        (only used when direction=<code>unwrap</code>) If <code>false</code> and the soap body contains a soap fault, a PipeRunException is thrown Default: false
      
    
    
      
        For direction=<code>unwrap</code> only: if true, allow unwrapped xml too Default: false
      
    
    
      
        alias used to obtain credentials for authentication to WebServiceSecurity
      
    
    
      
        Default username for WebServiceSecurity
      
    
    
      
        Default password for WebServiceSecurity
      
    
    
      
        If true, the password is sent digested; Otherwise it is sent in clear text Default: true
      
    
    
      
        For direction=<code>wrap</code> only: When false, adds an XML declaration to the output message. Default: true
      
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
  
  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
      
        Default: REG
      
      
        
      
    
    
      
        <b>Only used when <code>mode=reg</code>!</b> Sets the Common Message Header version. 1 or 2 Default: 1
      
    
    
      
        (only used when <code>direction=wrap</code>) when <code>true</code>, <code>outputNamespace</code> is automatically set using the parameters (if $messagingLayer='P2P' then 'http://nn.nl/XSD/$businessDomain/$applicationName/$applicationFunction' else is serviceContext is not empty 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceContext/$serviceContextVersion/$operationName/$operationVersion' else 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceVersion/$operationName/$operationVersion') Default: false
      
    
    
      
        (only used when <code>direction=wrap</code>) when <code>true</code>, the physical destination is retrieved from the queue instead of using the parameter <code>destination</code> Default: true
      
    
    
      
        If <code>true</code>, the fields CorrelationId, MessageId and Timestamp will have a fixed value (for testing purposes only) Default: false
      
    
    
      
        (only used when <code>direction=wrap</code>) when <code>true</code> and the Result tag already exists, the namespace is changed Default: false
      
    
    
      
        When the messagingLayer part of the destination has this value interpret it as P2P
      
    
    
      
        When the messagingLayer part of the destination has this value interpret it as ESB
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The flowId of the file transfer when direction=wrap. When direction=unwrap the flowId will be extracted from the incoming message and added as a sessionKey to the pipeline.
      
    
    
      
        specifies the output folder if transformFilename=<code>false</code> and direction=wrap
      
    
    
      
        when <code>true</code> and direction=wrap, the input which is expected to be a local filename will be transformed to the filename as known on the IUF State machine. Default: true
      
    
    
    
    
    
    
    
    
      
        either 3.1 or 3.2 Default: 3.1
      
    
    
      
        when set to <code>true</code>, the folder corresponding fxf.dir property will be created in case it does not exist Default: false
      
    
    
      
        when set to <code>true</code>, ServerFileName from the input will be used as the filename Default: false
      
    
  
  
    
    
  
  
    
      
        
          
            
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          Extension to SoapWrapperPipe for API Management.
 <p>
 <b>Configuration </b><i>(where deviating from SoapWrapperPipe)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>soapHeaderSessionKey</td><td>if direction=<code>wrap</code>: </td><td>soapHeader</td></tr>
 <tr><td>soapHeaderStyleSheet</td><td>if direction=<code>wrap</code>: </td><td>/xml/xsl/api/soapHeader.xsl</td></tr>
 </table>
 </p><p>
 <b>/xml/xsl/api/soapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td><code>MessageHeader</code> is only created when $conversationId is filled (otherwise skipped)</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td><code>From</code> is only created when $from_in is filled (otherwise skipped) and it's created with the value of $from_out</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://api.nn.nl/MessageHeader"</td></tr>
 <tr><td>from_in</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 <tr><td>from_out</td><td>property 'instance.name'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Extension to SoapWrapperPipe for separate modes.

 <p><b>Configuration </b><i>(where deviating from SoapWrapperPipe)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>mode</td><td>either <code>i2t</code> (ifsa2tibco), <code>reg</code> (regular) or <code>bis</code> (Business Integration Services)</td><td>reg</td></tr>
 <tr><td>cmhVersion</td><td>(only used when <code>mode=reg</code>) Common Message Header version (1 or 2)</td><td>1 when <code>mode=reg</code>, 0 otherwise</td></tr>
 <tr><td>soapHeaderSessionKey</td><td>if direction=<code>unwrap</code>: </td><td>soapHeader</td></tr>
 <tr><td>soapHeaderStyleSheet</td><td>if direction=<code>wrap</code> and mode=<code>i2t</code>:</td><td>/xml/xsl/esb/soapHeader.xsl</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>reg</code>:</td><td>TODO (for now identical to the "<code>i2t</code>" SOAP Header)</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>bis</code>:</td><td>/xml/xsl/esb/bisSoapHeader.xsl</td></tr>
 <tr><td>soapBodyStyleSheet</td><td>if direction=<code>wrap</code> and mode=<code>reg</code>:</td><td>/xml/xsl/esb/soapBody.xsl</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>bis</code>:</td><td>/xml/xsl/esb/bisSoapBody.xsl</td></tr>
 <tr><td>addOutputNamespace</td><td>(only used when <code>direction=wrap</code>) when <code>true</code>, <code>outputNamespace</code> is automatically set using the parameters (if $messagingLayer='P2P' then 'http://nn.nl/XSD/$businessDomain/$applicationName/$applicationFunction' else is serviceContext is not empty 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceContext/$serviceContextVersion/$operationName/$operationVersion' else 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceVersion/$operationName/$operationVersion')</td><td><code>false</code></td></tr>
 <tr><td>retrievePhysicalDestination</td><td>(only used when <code>direction=wrap</code>) when <code>true</code>, the physical destination is retrieved from the queue instead of using the parameter <code>destination</code></td><td><code>true</code></td></tr>
 <tr><td>useFixedValues</td><td>If <code>true</code>, the fields CorrelationId, MessageId and Timestamp will have a fixed value (for testing purposes only)</td><td><code>false</code></td></tr>
 <tr><td>fixResultNamespace</td><td>(only used when <code>direction=wrap</code>) when <code>true</code> and the Result tag already exists, the namespace is changed</td><td><code>false</code></td></tr>
 <tr><td>p2pAlias</td><td>When the messagingLayer part of the destination has this value interpret it as P2P</td><td><code></code></td></tr>
 <tr><td>esbAlias</td><td>When the messagingLayer part of the destination has this value interpret it as ESB</td><td><code></code></td></tr>
 </table></p>
 <p>
 <b>/xml/xsl/esb/soapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>&nbsp;</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Id</td><td>2</td><td>$fromId</td></tr>
 <tr><td>To</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Location</td><td>2</td><td>if $messagingLayer='P2P' then<br/>&nbsp;$messagingLayer.$businessDomain.$applicationName.$applicationFunction.$paradigm<br/>else if $serviceContext is not empty then<br/>&nbsp;$messagingLayer.$businessDomain.$serviceLayer.$serviceName.$serviceContext.$serviceContextVersion.$operationName.$operationVersion.$paradigm<br/>else<br/>&nbsp;$messagingLayer.$businessDomain.$serviceLayer.$serviceName.$serviceVersion.$operationName.$operationVersion.$paradigm</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>CPAId</td><td>2</td><td>$cpaId</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 <tr><td>CorrelationId</td><td>2</td><td>$correlationId (if empty then skip this element)</td></tr>
 <tr><td>MessageId</td><td>2</td><td>$messageId</td></tr>
 <tr><td>ExternalRefToMessageId</td><td>2</td><td>$externalRefToMessageId (if empty then skip this element)</td></tr>
 <tr><td>Timestamp</td><td>2</td><td>$timestamp</td></tr>
 <tr><td>TransactionId</td><td>2</td><td>$transactionId (only used when $mode=reg and $cmhVersion=2; if empty then skip this element)</td></tr>
 <tr><td>Service</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>2</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>2</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>2</td><td>&nbsp;</td></tr>
 <tr><td>Paradigm</td><td>3</td><td>$paradigm</td></tr>
 <tr><td>Name</td><td>3</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>3</td><td>$operationVersion</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>mode</td><td>copied from <code>mode</code></td></tr>
 <tr><td>cmhVersion</td><td>copied from <code>cmhVersion</code></td></tr>
 <tr><td>namespace</td><td>"http://nn.nl/XSD/Generic/MessageHeader/2" (only when $mode=reg and $cmhVersion=2)<br/>"http://nn.nl/XSD/Generic/MessageHeader/1" (otherwise)</td></tr>
 <tr><td>businessDomain</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>service(Context)Version</td><td>1</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 <tr><td>applicationName</td><td>&nbsp;</td></tr>
 <tr><td>applicationFunction</td><td>&nbsp;</td></tr>
 <tr><td>messagingLayer</td><td>ESB</td></tr>
 <tr><td>serviceLayer</td><td>&nbsp;</td></tr>
 <tr><td>destination</td><td>if not empty this parameter contains the preceding parameters as described in 'Location' in the table above</td></tr>
 <tr><td>fromId</td><td>property 'instance.name'</td></tr>
 <tr><td>cpaId</td><td>if applicable, copied from the original (received) SOAP Header, else 'n/a'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header, else parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>messageId</td><td>parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>correlationId</td><td>if $paradigm equals 'Response' then copied from MessageId in the original (received) SOAP Header</td></tr>
 <tr><td>externalRefToMessageId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 <tr><td>timestamp</td><td>parameter pattern '{now,date,yyyy-MM-dd'T'HH:mm:ss}'</td></tr>
 <tr><td>transactionId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/bisSoapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>&nbsp;</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Id</td><td>2</td><td>$fromId</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 <tr><td>MessageId</td><td>2</td><td>$messageId</td></tr>
 <tr><td>ExternalRefToMessageId</td><td>2</td><td>$externalRefToMessageId (if empty then skip this element)</td></tr>
 <tr><td>Timestamp</td><td>2</td><td>$timestamp</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://www.ing.com/CSP/XSD/General/Message_2"</td></tr>
 <tr><td>fromId</td><td>property 'instance.name'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header, else parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>messageId</td><td>parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>externalRefToMessageId</td><td>if applicable, copied from MessageId in the original (received) SOAP Header</td></tr>
 <tr><td>timestamp</td><td>parameter pattern '{now,date,yyyy-MM-dd'T'HH:mm:ss}'</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/soapBody.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>[Payload]</td><td>0</td><td>if $errorCode is empty then the complete payload will be copied and if not already existing a Result tag will be added<br/>else only the root tag will be copied</td></tr>
 <tr><td>Result</td><td>1</td><td>this element will be the last child in the copied root tag (only applicable for $paradigm 'Response'); if $errorCode is empty and a Result tag already exists then skip this element including its child elements</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>Status</td><td>2</td><td>if $errorCode is empty then 'OK'<br/>else 'ERROR'</td></tr>
 <tr><td>ErrorList</td><td>2</td><td>if $errorCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Error</td><td>3</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>4</td><td>$errorCode</td></tr>
 <tr><td>Reason</td><td>4</td><td>if $errorReason is not empty then $errorReason<br/>else it will be derived from $errorCode:
   <table border="1">
   <tr><th>errorCode</th><th>errorText</th></tr>
   <tr><td>ERR6002</td><td>Service Interface Request Time Out</td></tr>
   <tr><td>ERR6003</td><td>Invalid Request Message</td></tr>
   <tr><td>ERR6004</td><td>Invalid Backend system response</td></tr>
   <tr><td>ERR6005</td><td>Backend system failure response</td></tr>
   <tr><td>ERR6999</td><td>Unspecified Errors</td></tr>
  </table>
 </td></tr>
 <tr><td>Service</td><td>4</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>5</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>5</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Paradigm</td><td>6</td><td>$paradigm</td></tr>
 <tr><td>Name</td><td>6</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>6</td><td>$operationVersion</td></tr>
 <tr><td>DetailList</td><td>4</td><td>if $errorDetailCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Detail</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>6</td><td>$errorDetailCode</td></tr>
 <tr><td>Text</td><td>6</td><td>$errorDetailText (if empty then skip this element)</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>mode</td><td>copied from <code>mode</code></td></tr>
 <tr><td>cmhVersion</td><td>copied from <code>cmhVersion</code></td></tr>
 <tr><td>namespace</td><td>"http://nn.nl/XSD/Generic/MessageHeader/2" (only when $mode=reg and $cmhVersion=2)<br/>"http://nn.nl/XSD/Generic/MessageHeader/1" (otherwise)</td></tr>
 <tr><td>errorCode</td><td>&nbsp;</td></tr>
 <tr><td>errorReason</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailCode</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailText</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 <tr><td>fixResultNamespace</td><td>false</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/bisSoapBody.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>[Payload]</td><td>0</td><td>if $errorCode is empty then the complete payload will be copied and if not already existing a Result tag will be added<br/>else only the root tag will be copied</td></tr>
 <tr><td>Result</td><td>1</td><td>this element will be the last child in the copied root tag (only applicable for $paradigm 'Response' and 'Reply'); if $errorCode is empty and a Result tag already exists then skip this element including its child elements</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>Status</td><td>2</td><td>if $errorCode is empty then 'OK'<br/>else 'ERROR'</td></tr>
 <tr><td>ErrorList</td><td>2</td><td>if $errorCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Error</td><td>3</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>4</td><td>$errorCode</td></tr>
 <tr><td>Reason</td><td>4</td><td>if $errorReason is not empty then $errorReason<br/>else it will be derived from $errorCode:
   <table border="1">
   <tr><th>errorCode</th><th>errorText</th></tr>
   <tr><td>ERR6002</td><td>Service Interface Request Time Out</td></tr>
   <tr><td>ERR6003</td><td>Invalid Request Message</td></tr>
   <tr><td>ERR6004</td><td>Invalid Backend system response</td></tr>
   <tr><td>ERR6005</td><td>Backend system failure response</td></tr>
   <tr><td>ERR6999</td><td>Unspecified Errors</td></tr>
  </table>
 </td></tr>
 <tr><td>Service</td><td>4</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>5</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>5</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>6</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>6</td><td>$operationVersion</td></tr>
 <tr><td>DetailList</td><td>4</td><td>if $errorDetailCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Detail</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>6</td><td>$errorDetailCode</td></tr>
 <tr><td>Text</td><td>6</td><td>$errorDetailText (if empty then skip this element)</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://www.ing.com/CSP/XSD/General/Message_2"</td></tr>
 <tr><td>errorCode</td><td>&nbsp;</td></tr>
 <tr><td>errorReason</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailCode</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailText</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          FxF wrapper to be used with FxF3. When receiving files (direction=unwrap)
 the message handed to the pipeline is the local filename extracted from an
 ESB SOAP message. When sending files (direction=wrap) input should be a local
 filename which will be wrapped into an ESB SOAP message. Please note: When
 writing files which need to be send through FxF they should be written to
 ${fxf.dir}/NNX00000/out. The property ${fxf.dir} will automatically be
 available on the OTAP environment (define it in StageSpecifics_LOC.properties
 only). Replace NNX00000 with the specific flowId and generate a unique
 filename (files will automatically be cleaned after 30 days or any other
 value specified by ${fxf.retention}).
        
        
          
            
              
            
          
        
      
      
        
          Pipe to wrap or unwrap a message from/into a SOAP Envelope.
        
        
          
            
              
            
          
        
      
    
  
  
    
      
        
          
            
              
              
              
              
              
              
              
              
              
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          
            
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          A true multi-threaded Listener-class.
 <br/>

 Since version 4.1, Ibis supports distributed transactions using the XA-protocol. This feature is controlled by the
 transacted attribute. If this is set to <code>true</code>, received messages are
 committed or rolled back, possibly together with other actions, by the receiver or the pipeline.
 In case of a failure, all actions within the transaction are rolled back.

 <p><b>Using jmsTransacted and acknowledgement</b><br/>
 If jmsTransacted is set <code>true</code>: it should ensure that a message is received and processed on a both or nothing basis.
 IBIS will commit the the message, otherwise perform rollback. However using jmsTransacted, IBIS does not bring transactions within
 the adapters under transaction control, compromising the idea of atomic transactions. In the roll-back situation messages sent to
 other destinations within the Pipeline are NOT rolled back if jmsTransacted is set <code>true</code>! In the failure situation the
 message is therefore completely processed, and the roll back does not mean that the processing is rolled back! To obtain the correct
 (transactional) behaviour, transacted should be used instead of listener.transacted.
<p>
 Setting listener.acknowledgeMode to "auto" means that messages are allways acknowledged (removed from
 the queue, regardless of what the status of the Adapter is. "client" means that the message will only be removed from the queue
 when the state of the Adapter equals the success state.
 The "dups" mode instructs the session to lazily acknowledge the delivery of the messages. This is likely to result in the
 delivery of duplicate messages if JMS fails. It should be used by consumers who are tolerant in processing duplicate messages.
 In cases where the client is tolerant of duplicate messages, some enhancement in performance can be achieved using this mode,
 since a session has lower overhead in trying to prevent duplicate messages.
 </p>
 <p>The setting for listener.acknowledgeMode will only be processed if
 the setting for listener.transacted as well as for
 listener.jmsTransacted is false.</p>

 <p>If useReplyTo is set and a replyTo-destination is
 specified in the message, the JmsListener sends the result of the processing
 in the pipeline to this destination. Otherwise the result is sent using the (optionally)
 specified Sender, that in turn sends the message to
 whatever it is configured to.</p>
 </p>
 <p><b>Notice:</b> the JmsListener is ONLY capable of processing
 <code>jakarta.jms.TextMessage</code>s <br/><br/>
 </p>
        
        
          
            
              
            
          
        
      
    
  
  
    
      
        
          Transforms between ascii-ADIOS and an XML representation of ADIOS.

 <p>
 Sample xml:<br/>
 <pre><code>
 &lt;adios rekenbox="L76HB150"&gt;
     &lt;rubriek naam="BER_VERZ_CD" waarde="COMBIFLEX_BELEGGING" /&gt;
     &lt;rubriek naam="INBR_CD" waarde="NIEUWE_VERZEKERING" /&gt;
     &lt;rubriek naam="PENS_DT_BEP_CD"  waarde="DT_UIT_PENS_LFT" /&gt;
     &lt;rubriek nummer="313" naam="AS_OPSL_PRD_TRM_PRM" index="3" recordnr="74" record="VUT_VERZEKERING" waarde="52.34" /&gt;
 ...
 &lt;/adios&gt;
 </code></pre>
 <br/>
 For input, a 'naam' or a 'nummer'-attribute must be specified. If both are specified, their match is checked.
 On output, 'nummer', 'naam' and 'waarde'-attributes are always present in each rubriek-element.
 Where applicable 'index', 'recordnr', 'record' and 'recordindex' are present, too.
 If sub-records exist, they are present with a 'sub' prefix to all attributes.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Returns the amount of pages of a PDF file.
        
        
          
            
              
            
          
        
      
      
        
          Pipe to manage the ApiPrincipal handling
        
        
          
            
              
            
          
        
      
      
        
          Extension to SoapWrapperPipe for API Management.
 <p>
 <b>Configuration </b><i>(where deviating from SoapWrapperPipe)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>soapHeaderSessionKey</td><td>if direction=<code>wrap</code>: </td><td>soapHeader</td></tr>
 <tr><td>soapHeaderStyleSheet</td><td>if direction=<code>wrap</code>: </td><td>/xml/xsl/api/soapHeader.xsl</td></tr>
 </table>
 </p><p>
 <b>/xml/xsl/api/soapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td><code>MessageHeader</code> is only created when $conversationId is filled (otherwise skipped)</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td><code>From</code> is only created when $from_in is filled (otherwise skipped) and it's created with the value of $from_out</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://api.nn.nl/MessageHeader"</td></tr>
 <tr><td>from_in</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 <tr><td>from_out</td><td>property 'instance.name'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Extension to WsdlXmlValidator for API Management.

 The SOAP header can only contain the following schema (or it's empty):
 <table border="1">
 <tr><th>element</th><th>level</th><th>mandatory</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>yes</td></tr>
 <tr><td>xmlns="http://api.nn.nl/MessageHeader"</td><td>&nbsp;</td><td>yes</td></tr>
 <tr><td>From</td><td>1</td><td>no</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>yes</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>yes</td></tr>
 </table>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that performs base64 encoding and decoding.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that iterates over the lines in a BLOB.
        
        
          
            
              
            
          
        
      
      
        
          Output bytes as specified by the input XML.

 Actions are taken on every field
 tag found in the input XML. Every field tag should have a type attribute
 that specifies the type of conversion that needs to be done on the string
 specified by the value attribute. A value attribute also needs to be present
 for every field tag. Currently, two types of conversion are supported:

 <ul>
   <li><code>GetBytesFromString</code>, a conversion from string to bytes as specified by java.lang.String.getBytes(String charsetName)</li>
   <li><code>PackedDecimal</code>, a conversion from string to Packed-decimal</li>
 </ul>

 An additional charset attribute is needed for a GetBytesFromString
 conversion. An input XML that would encode the string &quot; TEST 1234 &quot;
 into EBCDIC format would look like:

 <pre>
 &lt;fields&gt;
   &lt;field type=&quot;GetBytesFromString&quot; value=&quot; TEST 1234 &quot; charset=&quot;Cp037&quot;/&gt;
 &lt;/fields&gt;
 </pre>

 The Packed-decimal conversion has been implemented according to information
 found in the following resources:

 <ul>
   <li>A description as found at <a href="http://www.simotime.com/datapk01.htm">http://www.simotime.com/datapk01.htm</a></li>
   <li>AS400PackedDecimal.java from jtopen_6_1_source.zip downloaded at <a href="http://jt400.sourceforge.net/">http://jt400.sourceforge.net/</a></li>
 </ul>

 Some examples:

 <ul>
   <li>The string +12345 will be translated to three bytes with the following hexadecimal representation: 12 34 5C</li>
   <li>The string -12345 will be translated to three bytes with the following hexadecimal representation: 12 34 5D</li>
   <li>The string 12345 will be translated to three bytes with the following hexadecimal representation: 12 34 5F</li>
   <li>The string 1234 will be translated to three bytes with the following hexadecimal representation: 01 23 4F</li>
 </ul>

 The Packed-decimal is prefixed with zeroes when the specified size is bigger
 than the number of decimals. An exception is thrown when the specified size
 is smaller than the number of decimals.

 An input XML that would generate a number of Packed-decimals could look like:

 <pre>
 &lt;fields&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+12345&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+67890&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+1234&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-12345&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-67890&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-1234&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;12345&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;67890&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;1234&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+1&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-1&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+12&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-12&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+123&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-123&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+1234&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-1234&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+12345&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-12345&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+123456&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-123456&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+1234567&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-1234567&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;+12345678&quot; size=&quot;16&quot;/&gt;
   &lt;field type=&quot;PackedDecimal&quot; value=&quot;-12345678&quot; size=&quot;16&quot;/&gt;
 &lt;/fields&gt;
 </pre>
        
        
          
            
              
            
          
        
      
      
        
          Pipe to calculate checksum on input.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that iterates over the lines in a CLOB.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that compares the two integer values.
 If one of the parameters is missing then the input message will be used as the missing operand.
 This pipe can be used in combination with IncreaseIntegerPipe to construct loops.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that lexicographically compares two strings, that must NOT be empty.
        
        
          
            
              
            
          
        
      
      
        
          Pipe to zip or unzip a message or file.
        
        
          
            
              
            
          
        
      
      
        
          Selects an exitState, based on the number of received messages by this pipe.

 The exitState is the difference (subtraction) between the <code>divisor</code> and
 the remainder of [number of received messages] modulus <code>divisor</code>.
 This will always be an integer between 1 and <code>divisor</code>, inclusive.
        
        
          
            
              
            
          
        
      
      
        
          Pipe to check the the CredentialFactory (for testing only).
        
        
          
            
              
            
          
        
      
      
        
          Pipe that reads a CRL from an input stream and transforms it to an XML.
 The steam is closed after reading.

 Example configuration:
 <pre><code>
	&lt;pipe
		name="Read issuer"
		className="org.frankframework.pipes.FilePipe"
		actions="read"
		fileName="dir/issuer.cer"
		preserveInput="true"
		outputType="stream"
		storeResultInSessionKey="issuer"
		&gt;
		&lt;forward name="success" path="Read CRL" /&gt;
	&lt;/pipe&gt;
	&lt;pipe
		name="Read CRL"
		className="org.frankframework.pipes.FilePipe"
		actions="read"
		fileName="dir/CRL.crl"
		outputType="stream"
		&gt;
		&lt;forward name="success" path="Transform CRL" /&gt;
	&lt;/pipe&gt;
	&lt;pipe
		name="Transform CRL"
		className="org.frankframework.pipes.CrlPipe"
		issuerSessionKey="issuer"
		&gt;
		&lt;forward name="success" path="EXIT" /&gt;
	&lt;/pipe&gt;
 </code></pre>
        
        
          
            
              
            
          
        
      
      
        
          Reads a message in CSV format, and turns it into XML.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that sleeps for a specified time, which defaults to 5000 msecs.
 Usefull for testing purposes.
        
        
          
            
              
            
          
        
      
      
        
          Kind of extension to EsbSoapWrapperPipe for real time destinations.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that performs domain transforming on the basis of a database table.

 Every string which equals "%![DT{<code>label</code>,<code>valueIn</code>,<code>type</code>}]" will be replaced by <code>valueOut</code>.

 The field <code>type</code>, which is optional, indicates the format of <code>valueIn</code>. Currently the following types are supported:

 <ul>
   <li><code>string</code> (default): the methode setString() is used</li>
   <li><code>number</code>: the method setDouble() is used </li>
 </ul>
        
        
          
            
              
            
          
        
      
      
        
          Returns simply the input message.
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will automatically add the SOAP envelope XSD and the ESB XSD (e.g. a CommonMessageHeader.xsd)
 to the set of XSDs used for validation.
        
        
          
            
              
            
          
        
      
      
        
          Extension to SoapWrapperPipe for separate modes.

 <p><b>Configuration </b><i>(where deviating from SoapWrapperPipe)</i><b>:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>mode</td><td>either <code>i2t</code> (ifsa2tibco), <code>reg</code> (regular) or <code>bis</code> (Business Integration Services)</td><td>reg</td></tr>
 <tr><td>cmhVersion</td><td>(only used when <code>mode=reg</code>) Common Message Header version (1 or 2)</td><td>1 when <code>mode=reg</code>, 0 otherwise</td></tr>
 <tr><td>soapHeaderSessionKey</td><td>if direction=<code>unwrap</code>: </td><td>soapHeader</td></tr>
 <tr><td>soapHeaderStyleSheet</td><td>if direction=<code>wrap</code> and mode=<code>i2t</code>:</td><td>/xml/xsl/esb/soapHeader.xsl</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>reg</code>:</td><td>TODO (for now identical to the "<code>i2t</code>" SOAP Header)</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>bis</code>:</td><td>/xml/xsl/esb/bisSoapHeader.xsl</td></tr>
 <tr><td>soapBodyStyleSheet</td><td>if direction=<code>wrap</code> and mode=<code>reg</code>:</td><td>/xml/xsl/esb/soapBody.xsl</td></tr>
 <tr><td></td><td>if direction=<code>wrap</code> and mode=<code>bis</code>:</td><td>/xml/xsl/esb/bisSoapBody.xsl</td></tr>
 <tr><td>addOutputNamespace</td><td>(only used when <code>direction=wrap</code>) when <code>true</code>, <code>outputNamespace</code> is automatically set using the parameters (if $messagingLayer='P2P' then 'http://nn.nl/XSD/$businessDomain/$applicationName/$applicationFunction' else is serviceContext is not empty 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceContext/$serviceContextVersion/$operationName/$operationVersion' else 'http://nn.nl/XSD/$businessDomain/$serviceName/$serviceVersion/$operationName/$operationVersion')</td><td><code>false</code></td></tr>
 <tr><td>retrievePhysicalDestination</td><td>(only used when <code>direction=wrap</code>) when <code>true</code>, the physical destination is retrieved from the queue instead of using the parameter <code>destination</code></td><td><code>true</code></td></tr>
 <tr><td>useFixedValues</td><td>If <code>true</code>, the fields CorrelationId, MessageId and Timestamp will have a fixed value (for testing purposes only)</td><td><code>false</code></td></tr>
 <tr><td>fixResultNamespace</td><td>(only used when <code>direction=wrap</code>) when <code>true</code> and the Result tag already exists, the namespace is changed</td><td><code>false</code></td></tr>
 <tr><td>p2pAlias</td><td>When the messagingLayer part of the destination has this value interpret it as P2P</td><td><code></code></td></tr>
 <tr><td>esbAlias</td><td>When the messagingLayer part of the destination has this value interpret it as ESB</td><td><code></code></td></tr>
 </table></p>
 <p>
 <b>/xml/xsl/esb/soapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>&nbsp;</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Id</td><td>2</td><td>$fromId</td></tr>
 <tr><td>To</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Location</td><td>2</td><td>if $messagingLayer='P2P' then<br/>&nbsp;$messagingLayer.$businessDomain.$applicationName.$applicationFunction.$paradigm<br/>else if $serviceContext is not empty then<br/>&nbsp;$messagingLayer.$businessDomain.$serviceLayer.$serviceName.$serviceContext.$serviceContextVersion.$operationName.$operationVersion.$paradigm<br/>else<br/>&nbsp;$messagingLayer.$businessDomain.$serviceLayer.$serviceName.$serviceVersion.$operationName.$operationVersion.$paradigm</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>CPAId</td><td>2</td><td>$cpaId</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 <tr><td>CorrelationId</td><td>2</td><td>$correlationId (if empty then skip this element)</td></tr>
 <tr><td>MessageId</td><td>2</td><td>$messageId</td></tr>
 <tr><td>ExternalRefToMessageId</td><td>2</td><td>$externalRefToMessageId (if empty then skip this element)</td></tr>
 <tr><td>Timestamp</td><td>2</td><td>$timestamp</td></tr>
 <tr><td>TransactionId</td><td>2</td><td>$transactionId (only used when $mode=reg and $cmhVersion=2; if empty then skip this element)</td></tr>
 <tr><td>Service</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>2</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>2</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>2</td><td>&nbsp;</td></tr>
 <tr><td>Paradigm</td><td>3</td><td>$paradigm</td></tr>
 <tr><td>Name</td><td>3</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>3</td><td>$operationVersion</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>mode</td><td>copied from <code>mode</code></td></tr>
 <tr><td>cmhVersion</td><td>copied from <code>cmhVersion</code></td></tr>
 <tr><td>namespace</td><td>"http://nn.nl/XSD/Generic/MessageHeader/2" (only when $mode=reg and $cmhVersion=2)<br/>"http://nn.nl/XSD/Generic/MessageHeader/1" (otherwise)</td></tr>
 <tr><td>businessDomain</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>service(Context)Version</td><td>1</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 <tr><td>applicationName</td><td>&nbsp;</td></tr>
 <tr><td>applicationFunction</td><td>&nbsp;</td></tr>
 <tr><td>messagingLayer</td><td>ESB</td></tr>
 <tr><td>serviceLayer</td><td>&nbsp;</td></tr>
 <tr><td>destination</td><td>if not empty this parameter contains the preceding parameters as described in 'Location' in the table above</td></tr>
 <tr><td>fromId</td><td>property 'instance.name'</td></tr>
 <tr><td>cpaId</td><td>if applicable, copied from the original (received) SOAP Header, else 'n/a'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header, else parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>messageId</td><td>parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>correlationId</td><td>if $paradigm equals 'Response' then copied from MessageId in the original (received) SOAP Header</td></tr>
 <tr><td>externalRefToMessageId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 <tr><td>timestamp</td><td>parameter pattern '{now,date,yyyy-MM-dd'T'HH:mm:ss}'</td></tr>
 <tr><td>transactionId</td><td>if applicable, copied from the original (received) SOAP Header</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/bisSoapHeader.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>MessageHeader</td><td>0</td><td>&nbsp;</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>From</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>Id</td><td>2</td><td>$fromId</td></tr>
 <tr><td>HeaderFields</td><td>1</td><td>&nbsp;</td></tr>
 <tr><td>ConversationId</td><td>2</td><td>$conversationId</td></tr>
 <tr><td>MessageId</td><td>2</td><td>$messageId</td></tr>
 <tr><td>ExternalRefToMessageId</td><td>2</td><td>$externalRefToMessageId (if empty then skip this element)</td></tr>
 <tr><td>Timestamp</td><td>2</td><td>$timestamp</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://www.ing.com/CSP/XSD/General/Message_2"</td></tr>
 <tr><td>fromId</td><td>property 'instance.name'</td></tr>
 <tr><td>conversationId</td><td>if applicable, copied from the original (received) SOAP Header, else parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>messageId</td><td>parameter pattern '{hostname}_{uid}'</td></tr>
 <tr><td>externalRefToMessageId</td><td>if applicable, copied from MessageId in the original (received) SOAP Header</td></tr>
 <tr><td>timestamp</td><td>parameter pattern '{now,date,yyyy-MM-dd'T'HH:mm:ss}'</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/soapBody.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>[Payload]</td><td>0</td><td>if $errorCode is empty then the complete payload will be copied and if not already existing a Result tag will be added<br/>else only the root tag will be copied</td></tr>
 <tr><td>Result</td><td>1</td><td>this element will be the last child in the copied root tag (only applicable for $paradigm 'Response'); if $errorCode is empty and a Result tag already exists then skip this element including its child elements</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>Status</td><td>2</td><td>if $errorCode is empty then 'OK'<br/>else 'ERROR'</td></tr>
 <tr><td>ErrorList</td><td>2</td><td>if $errorCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Error</td><td>3</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>4</td><td>$errorCode</td></tr>
 <tr><td>Reason</td><td>4</td><td>if $errorReason is not empty then $errorReason<br/>else it will be derived from $errorCode:
   <table border="1">
   <tr><th>errorCode</th><th>errorText</th></tr>
   <tr><td>ERR6002</td><td>Service Interface Request Time Out</td></tr>
   <tr><td>ERR6003</td><td>Invalid Request Message</td></tr>
   <tr><td>ERR6004</td><td>Invalid Backend system response</td></tr>
   <tr><td>ERR6005</td><td>Backend system failure response</td></tr>
   <tr><td>ERR6999</td><td>Unspecified Errors</td></tr>
  </table>
 </td></tr>
 <tr><td>Service</td><td>4</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>5</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>5</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Paradigm</td><td>6</td><td>$paradigm</td></tr>
 <tr><td>Name</td><td>6</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>6</td><td>$operationVersion</td></tr>
 <tr><td>DetailList</td><td>4</td><td>if $errorDetailCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Detail</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>6</td><td>$errorDetailCode</td></tr>
 <tr><td>Text</td><td>6</td><td>$errorDetailText (if empty then skip this element)</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>mode</td><td>copied from <code>mode</code></td></tr>
 <tr><td>cmhVersion</td><td>copied from <code>cmhVersion</code></td></tr>
 <tr><td>namespace</td><td>"http://nn.nl/XSD/Generic/MessageHeader/2" (only when $mode=reg and $cmhVersion=2)<br/>"http://nn.nl/XSD/Generic/MessageHeader/1" (otherwise)</td></tr>
 <tr><td>errorCode</td><td>&nbsp;</td></tr>
 <tr><td>errorReason</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailCode</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailText</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 <tr><td>fixResultNamespace</td><td>false</td></tr>
 </table>
 </p>
 <p>
 <b>/xml/xsl/esb/bisSoapBody.xsl:</b>
 <table border="1">
 <tr><th>element</th><th>level</th><th>value</th></tr>
 <tr><td>[Payload]</td><td>0</td><td>if $errorCode is empty then the complete payload will be copied and if not already existing a Result tag will be added<br/>else only the root tag will be copied</td></tr>
 <tr><td>Result</td><td>1</td><td>this element will be the last child in the copied root tag (only applicable for $paradigm 'Response' and 'Reply'); if $errorCode is empty and a Result tag already exists then skip this element including its child elements</td></tr>
 <tr><td>&nbsp;</td><td>&nbsp;</td><td>xmlns=$namespace</td></tr>
 <tr><td>Status</td><td>2</td><td>if $errorCode is empty then 'OK'<br/>else 'ERROR'</td></tr>
 <tr><td>ErrorList</td><td>2</td><td>if $errorCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Error</td><td>3</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>4</td><td>$errorCode</td></tr>
 <tr><td>Reason</td><td>4</td><td>if $errorReason is not empty then $errorReason<br/>else it will be derived from $errorCode:
   <table border="1">
   <tr><th>errorCode</th><th>errorText</th></tr>
   <tr><td>ERR6002</td><td>Service Interface Request Time Out</td></tr>
   <tr><td>ERR6003</td><td>Invalid Request Message</td></tr>
   <tr><td>ERR6004</td><td>Invalid Backend system response</td></tr>
   <tr><td>ERR6005</td><td>Backend system failure response</td></tr>
   <tr><td>ERR6999</td><td>Unspecified Errors</td></tr>
  </table>
 </td></tr>
 <tr><td>Service</td><td>4</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>5</td><td>$serviceName</td></tr>
 <tr><td>Context</td><td>5</td><td>$serviceContext</td></tr>
 <tr><td>Action</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Name</td><td>6</td><td>$operationName</td></tr>
 <tr><td>Version</td><td>6</td><td>$operationVersion</td></tr>
 <tr><td>DetailList</td><td>4</td><td>if $errorDetailCode is empty then skip this element including its child elements</td></tr>
 <tr><td>Detail</td><td>5</td><td>&nbsp;</td></tr>
 <tr><td>Code</td><td>6</td><td>$errorDetailCode</td></tr>
 <tr><td>Text</td><td>6</td><td>$errorDetailText (if empty then skip this element)</td></tr>
 </table>
 <b>Parameters:</b>
 <table border="1">
 <tr><th>name</th><th>default</th></tr>
 <tr><td>namespace</td><td>"http://www.ing.com/CSP/XSD/General/Message_2"</td></tr>
 <tr><td>errorCode</td><td>&nbsp;</td></tr>
 <tr><td>errorReason</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailCode</td><td>&nbsp;</td></tr>
 <tr><td>errorDetailText</td><td>&nbsp;</td></tr>
 <tr><td>serviceName</td><td>&nbsp;</td></tr>
 <tr><td>serviceContext</td><td>&nbsp;</td></tr>
 <tr><td>operationName</td><td>&nbsp;</td></tr>
 <tr><td>operationVersion</td><td>1</td></tr>
 <tr><td>paradigm</td><td>&nbsp;</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that performs translations between special characters and their xml equivalents.
 <p>When direction=cdata2text all cdata nodes are converted to text nodes without any other translations.</p>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that throws an exception, based on the input message.
        
        
          
            
              
            
          
        
      
      
        
          This Pipe opens and returns a file from the classpath. The filename is a mandatory parameter to use. You can
 provide this by using the <code>filename</code> attribute or with a <code>param</code> element to be able to
 use a sessionKey for instance.

 <h2>Migrating from deprecated features</h2>
 The FixedResultPipe was a jack of all trades. You could use it to read a file (only text) and/or use
 a 'resultString' to find / replace values in. The following migrations are available:

 <h3>For using a 'resultString'</h3>
 You can use the EchoPipe for a static value. This looked like this before:

 <pre>
 {@code
 <pipe name="HelloWorld" className="org.frankframework.pipes.FixedResult" returnString="Hello World">
     <forward name="success" path="EXIT"/>
 </pipe>
 }
 </pre>
 Becomes:
 <pre>
 {@code
 <pipe name="HelloWorld" className="org.frankframework.pipes.EchoPipe" getInputFromFixedValue="Hello World">
     <forward name="success" path="EXIT"/>
 </pipe>
 }
 </pre>

 <h3>For replacing a value</h3>
 You can use the ReplacerPipe to replace a value in multiple ways. First, when you need to replace a placeholder with a parameter.
 This looked like:
 <pre>
 {@code
 <pipe name="make unique message" className="org.frankframework.pipes.FixedResultPipe"
     returnString="&lt;msg mid=&quot;MID&quot; action=&quot;ACTION&quot; /&gt;" replaceFixedParams="true">
     <param name="MID" sessionKey="mid" />
 	   <param name="ACTION" xpathExpression="request/@action" />
 </pipe>
 }
 </pre>

 And can now be written like this (note the ?{..} syntax):
 <pre>
 {@code
 <pipe name="make unique message" className="org.frankframework.pipes.ReplacerPipe"
     getInputFromFixedValue="&lt;msg mid=&quot;?{MID}&quot; action=&quot;?{ACTION}&quot; /&gt;">
 	   <param name="MID" sessionKey="mid" />
 	   <param name="ACTION" xpathExpression="request/@action" />
 </pipe>
 }
 </pre>

 When you need to replace a fixed value use the ReplacerPipe with find and replace. This looked like this:
 <pre>
 {@code
 <FixedResultPipe name="InputValidateError"
     filename="ManageFileSystem/xml/ErrorMessage.xml"
     replaceFrom="%reasonCode" replaceTo="NOT_WELL_FORMED_XML">
     <forward name="success" path="EXIT" />
 </FixedResultPipe>
 }
 </pre>

 And now should be solved like this:
 <pre>
 {@code
 <FixedResultPipe name="InputValidateError"
     filename="ManageFileSystem/xml/ErrorMessage.xml">
     <forward name="success" path="replaceReasonCode" />
 </FixedResultPipe>
 <ReplacerPipe name="replaceReasonCode"
     find="%reasonCode"
     replace="NOT_WELL_FORMED_XML">
     <forward name="success" path="EXIT" />
 </ReplacerPipe>
 }
 </pre>
 This is also an example of now using two pipes to achieve the same result. Each pipe has its own responsibility.

 <h2>More complex configurations</h2>
 In some cases, a combination of the above is needed to achieve what worked before. In some cases, FixedResultPipe
 was also used to store information in the session. For example, a port of configuration in the JMS listener sender configuration looked like this:
 <pre>
 {@code
 	<CompareStringPipe name="compareIdAndCid" >
 		<param name="operand1" sessionKey="id"/>
 		<param name="operand2" sessionKey="cid"/>
 		<forward name="equals" path="IdAndCidSame" />
 		<forward name="lessthan" path="IdAndCidDifferent" />
 		<forward name="greaterthan" path="IdAndCidDifferent" />
 	</CompareStringPipe>
 	<FixedResultPipe name="IdAndCidSame" returnString="true" storeResultInSessionKey="IdAndCidSame">
 		<forward name="success" path="displayKeys" />
 	</FixedResultPipe>
 	<FixedResultPipe name="IdAndCidDifferent" returnString="false" storeResultInSessionKey="IdAndCidSame">
 		<forward name="success" path="displayKeys" />
 	</FixedResultPipe>

  <pipe name="displayKeys" className="org.frankframework.pipes.FixedResultPipe"
 		returnString="branch [BRANCH] Orignal Id [MID] cid [CID] id=cid [SAME]" replaceFixedParams="true">
 		<param name="BRANCH" sessionKey="originalMessage" xpathExpression="*&#47;@branch" />
 		<param name="MID" sessionKey="id" />
 		<param name="CID" sessionKey="cid" />
 		<param name="SAME" sessionKey="IdAndCidSame" />
 		<forward name="success" path="EXIT" />
 	</pipe>
 }
 </pre>

 Was rewritten to the following:
 <pre>
 {@code
 	<CompareStringPipe name="compareIdAndCid" >
 		<param name="operand1" sessionKey="id"/>
 		<param name="operand2" sessionKey="cid"/>
 		<forward name="equals" path="IdAndCidSame" />
 		<forward name="lessthan" path="IdAndCidDifferent" />
 		<forward name="greaterthan" path="IdAndCidDifferent" />
 	</CompareStringPipe>

 	<PutInSessionPipe name="IdAndCidSame" value="true" sessionKey="IdAndCidSame">
 		<forward name="success" path="putOriginalMessageInSession" />
 	</PutInSessionPipe>
 	<PutInSessionPipe name="IdAndCidDifferent" value="false" sessionKey="IdAndCidSame">
 		<forward name="success" path="putOriginalMessageInSession" />
 	</PutInSessionPipe>

 	<PutInSessionPipe name="putOriginalMessageInSession" sessionKey="incomingMessage"/>

 	<pipe name="displayKeys" className="org.frankframework.pipes.ReplacerPipe"
 		getInputFromFixedValue="branch [?{BRANCH}] Original Id [?{MID}] cid [?{CID}] id=cid [?{SAME}]">
 		<param name="BRANCH" sessionKey="originalMessage" xpathExpression="*&#47;@branch" />
 		<param name="MID" sessionKey="id" />
 		<param name="CID" sessionKey="cid" />
 		<param name="SAME" sessionKey="IdAndCidSame" />
 		<forward name="success" path="EXIT" />
 	</pipe>
 }
 </pre>
 <p>

 <h2>The features/documentation of the deprecated features</h2>
 Produces a fixed result that does not depend on the input message. It may return the contents of a file
 when <code>filename</code> or <code>filenameSessionKey</code> is specified. Otherwise, the
 value of attribute <code>returnString</code> is returned.
 <br/><br/>
 Using parameters and the attributes of this pipe, it is possible to substitute values. This pipe
 performs the following steps:
 <ol>
 <li>During execution, this pipe first obtains a string based on attributes <code>returnString</code>, <code>filename</code> or <code>filenameSessionKey</code>.</li>
 <li>The resulting string is transformed according to attributes <code>replaceFrom</code> and <code>replaceTo</code> if set.
 Please note that the plain value of attribute <code>replaceFrom</code> is matched, no <code>?{...}</code> here.</li>

 <li>The resulting string is substituted based on the parameters of this pipe. This step depends on attribute <code>replaceFixedParams</code>.
 Assume that there is a parameter with name <code>xyz</code>. If <code>replaceFixedParams</code> is <code>false</code>, then
 each occurrence of <code>?{xyz}</code> is replaced by the parameter's value. Otherwise, the text <code>xyz</code>
 is substituted. See Parameter to see how parameter values are determined.</li>

 <li>If attribute <code>substituteVars</code> is <code>true</code>, then expressions <code>${...}</code> are substituted using
 system properties, pipelinesession variables and application properties. Please note that
 no <code>${...}</code> patterns are left if the initial string came from attribute <code>returnString</code>, because
 any <code>${...}</code> pattern in attribute <code>returnString</code> is substituted when the configuration is loaded.</li>
 <li>If attribute <code>styleSheetName</code> is set, then the referenced XSLT stylesheet is applied to the resulting string.</li>
 </ol>
 <br/>
 Many attributes of this pipe reference file names. If a file is referenced by a relative path, the path
 is relative to the configuration's root directory.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Sends a message to a Sender for each child element of the input XML.
 Input can be a String containing XML, a filename (set processFile true), an InputStream or a Reader.
        
        
          
            
              
            
          
        
      
      
        
          FxF wrapper to be used with FxF3. When receiving files (direction=unwrap)
 the message handed to the pipeline is the local filename extracted from an
 ESB SOAP message. When sending files (direction=wrap) input should be a local
 filename which will be wrapped into an ESB SOAP message. Please note: When
 writing files which need to be send through FxF they should be written to
 ${fxf.dir}/NNX00000/out. The property ${fxf.dir} will automatically be
 available on the OTAP environment (define it in StageSpecifics_LOC.properties
 only). Replace NNX00000 with the specific flowId and generate a unique
 filename (files will automatically be cleaned after 30 days or any other
 value specified by ${fxf.retention}).
        
        
          
            
              
            
          
        
      
      
        
          FxF XML validator to be used with FxF3. When receiving files
 (direction=receive) the message is validated against the
 OnCompletedTransferNotify WSDL (a P2P connection, hence same WSDL (provided
 by Tibco) for all queues (every Ibis receiving FxF files has it's own
 queue)). When sending files (direction=send) the message is validated against
 the StartTransfer WSDL (ESB service provided by Tibco).
        
        
          
            
              
            
          
        
      
      
        
          Gets the contents of the pipeLineSession by a key specified by
 <code>sessionKey</code>.
        
        
          
            
              
            
          
        
      
      
        
          Returns the name of the user executing the request.
        
        
          
            
              
            
          
        
      
      
        
          Returns information about Tibco queues in a XML string.
 <p>
 If the parameter <code>queueName</code> is empty then
 <ul><li>all Tibco queues including information about these queues are returned</li></ul>
 else
 <ul><li>one message on a specific Tibco queue including information about this message is returned (without removing it)</li></ul>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that hashes the input message.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that increases the integer value of a session variable.
 Can be used in combination with CompareIntegerPipe to construct loops.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that checks if the calling user has a specified role.
 Uses the PipeLineSessions methods.
 <p>
 If the role is not specified by the role attribute, the input of
 the pipe is used as role.

 N.B. The role itself must be specified by hand in the deployment descriptors web.xml and application.xml.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Selects an exitState, based on if the input is a XML string.
 The input is an XML string if it, after removing leading white-space characters, starts with '&lt;'.
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that validates the XML or JSON input message against a XML Schema and returns either XML or JSON.
        
        
          
            
              
            
          
        
      
      
        
          JSON is not aware of the element order. This pipe performs a <strong>best effort</strong> JSON to XML transformation.
 If you wish to validate or add structure to the converted (xml) file, please use the Json2XmlValidator.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that validates the input message against a JSON Schema.
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that checks the well-formedness of the input message.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XSLT transformation with a specified stylesheet on a JSON input, yielding JSON, XML or text.
 JSON input is transformed into XML map, array, string, integer and boolean elements, in the namespace http://www.w3.org/2013/XSL/json.
 The XSLT stylesheet or XPathExpression operates on these element.
        
        
          
            
              
            
          
        
      
      
        
          Creates a JWT with a shared secret using the HmacSHA256 algorithm.
        
        
          
            
              
            
          
        
      
      
        
          Transforms between ascii and an XML representation.

 <p>
 Sample xml:<br/><code><pre>
 	&lt;CALCBOXMESSAGE&gt;
		&lt;OPDRACHT&gt;
			&lt;OPDRACHTSOORT&gt;ONTTREK_RISICO_EN_KOSTEN&lt;/OPDRACHTSOORT&gt;
			&lt;BASISRENDEMENTSOORT&gt;NVT&lt;/BASISRENDEMENTSOORT&gt;
			&lt;BEDRAG&gt;625&lt;/BEDRAG&gt;
			&lt;DATUM&gt;20071201&lt;/DATUM&gt;

          ...
 	&lt;/CALCBOXMESSAGE&gt;
 </pre></code> <br/>

 Sample ascii:<br/><code><pre>
 	OPDRACHT : #SAMENGESTELD
 	OPDRACHT.OPDRACHTSOORT :ONTTREK_RISICO_EN_KOSTEN
 	OPDRACHT.BASISRENDEMENTSOORT :NVT
 	OPDRACHT.BEDRAG :625
 	OPDRACHT.DATUM :20071201

          ...
 	EINDEREKENVERZOEK :EINDE
 </pre></code>
 </p>

 <p><b>Configuration:</b>
 <table border="1">
 <tr><th>attributes</th><th>description</th><th>default</th></tr>
 <tr><td>direction</td><td>transformation direction. Possible values
 <ul>
   <li>"Xml2Label": transform an XML file to ascii</li>
   <li>"Label2Xml": transform an ascii file to XML</li>
 </ul></td><td>Xml2Label</td></tr>
 </table>
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Call Ladybug Test Tool to rerun the reports present in test storage (see Test tab in Ladybug)
        
        
          
            
              
            
          
        
      
      
        
          Call Larva Test Tool
        
        
          
            
              
            
          
        
      
      
        
          Pipe that returns the memberships of a userDN.
 The input is a fullDn, of a user or a group.
 <br/>
 Sample result:<br/><code><pre>
	&lt;ldap&gt;
	 &lt;entry name="CN=xxyyzz,OU=Users,DC=domain,DC=ext"&gt;
	   &lt;attributes&gt;
	    &lt;attribute&gt;
	    &lt;attribute name="memberOf" value="Extern"/&gt;
	    &lt;attribute name="departmentCode" value="358000"/&gt;
	    &lt;attribute name="organizationalHierarchy"&gt;
	        &lt;item value="ou=zzyyxx"/&gt;
	        &lt;item value="ou=OPS&amp;IT,ou=Group,ou=domain,o=ext"/&gt;
	    &lt;/attribute>
	    &lt;attribute name="givenName" value="Gerrit"/>
	   &lt;/attributes&gt;
	  &lt;/entry&gt;
   &lt;entry&gt; .... &lt;/entry&gt;
   .....
	&lt;/ldap&gt;
 </pre></code> <br/>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that checks if a specified dn exists as 'member' in another specified dn
 in LDAP.
        
        
          
            
              
            
          
        
      
      
        
          Pipe to work with the server local filesystem.
 <p>
     In addition to regular parameters for filesystem senders, it is possible
     to set custom extended attributes on files by prefixing parameter names with
     FileAttribute..
     This prefix will be not be part of the actual metadata property name.
 </p>
 <p>
     The string value of these parameters will be used as value of the custom metadata attribute.
 </p>
 <p>
     If extended attributes actually can be written depends on the underlying OS / filesystem.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that stores all its parameter values in the ThreadContext, formerly known as Mapped Diagnostic Context (MDC), to be used in logging.
 The input is passed through to the output.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that sends a mail-message using a MailSender as its sender.
 <br/>
 Sample email.xml:<br/><code><pre>
	&lt;email&gt;
	    &lt;recipients&gt;
	        &lt;recipient&gt;***@natned&lt;/recipient&gt;
	        &lt;recipient&gt;***@nn.nl&lt;/recipient&gt;
	    &lt;/recipients&gt;
	    &lt;from&gt;***@nn.nl&lt;/from&gt;
	    &lt;subject&gt;this is the subject&lt;/subject&gt;
	    &lt;message&gt;dit is de message&lt;/message&gt;
	&lt;/email&gt;
 </pre></code> <br/>
 Notice: it must be valid XML. Therefore, especially the message element
 must be plain text or be wrapped as CDATA.<br/><br/>
 example:<br/><code><pre>
 &lt;message&gt;&lt;![CDATA[&lt;h1&gt;This is a HtmlMessage&lt;/h1&gt;]]&gt;&lt;/message&gt;
 </pre></code><br/>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that performs obfuscation on a message, using the tibcrypt library.
        
        
          
            
              
            
          
        
      
      
        
          <p>Performs various PGP (Pretty Good Privacy) actions such as Encrypt, Sign, Decrypt, Verify.</p>
 <p>To use this pipe action parameter has to be set to one of the actions above.</p>
 <p>
 <strong>Note:</strong> When secret key is required in any of the actions,
 the related public key should also be included in public keys.
 </p>

 <p>
 <strong>Note:</strong> For fields that require multiple input
 (such as recipients, senders and publicKey -in certain actions-)
 you can seperate multiple values with ";" (semicolon).
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Generates a random password.
        
        
          
            
              
            
          
        
      
      
        
          Hash a password or validate a password against a hash using PasswordHash.java
 from <a href="https://crackstation.net/hashing-security.htm">https://crackstation.net/hashing-security.htm</a>.
 Input of the pipe is expected to be the password. In case hashSessionKey
 isn't used a hash of the password is returned. In case hashSessionKey is used
 it is validated against the hash in the session key which will determine
 the forward to be used (success or failure).
        
        
          
            
              
            
          
        
      
      
        
          Converts files to pdf type. This pipe has two actions convert and combine.
 With combine action you can attach files into main pdf file.
        
        
          
            
              
            
          
        
      
      
        
          Puts the input or the <code>value</code> in the PipeLineSession, under the key specified by
 <code>sessionKey</code>. Additionally, stores parameter values in the PipeLineSession.
        
        
          
            
              
            
          
        
      
      
        
          Puts the system date/time under a key in the pipeLineSession.
        
        
          
            
              
            
          
        
      
      
        
          Perform a call to a RekenBox.

 The inputmessage is written to a temporary file and passed as inputfile to the rekenbox. The contents of the outputfile of the
 rekenbox is returned as output message. The name of the rekenbox, as determined from the inputfile, is optionally written to
 the pipeLineSession.


 <p><b>Note:</b><br/>
 The rekenbox-name is currently determined from the first 8 characters of the file, or up
 to the first space (' ') or colon (':') character. Beware that if the first character of the
 file is a newline character or something similar, less characters are available to pass the
 rekenbox-name on. Especially if the inputmessages are constructed by means of an XSLT-stylesheet,
 messages often start with a newline character.
 </p>
        
        
          
            
              
            
          
        
      
      
        
          Remove specified cache key from cache with specified name.
        
        
          
            
              
            
          
        
      
      
        
          Removes a key specified by <code>sessionKey</code>
 from the pipeLineSession.
        
        
          
            
              
            
          
        
      
      
        
          This Pipe is used to replace values in a few ways. The following steps are performed:
 <ol>
 <li>If <code>find</code> is provided, it will be replaced by <code>replace</code></li>
 <li>The resulting string is substituted based on the parameters of this pipe. It will replace values in the input enclosed
 with ?{}, for instance: ?{parameterOne}, with parameters of this pipe. If a parameter for the given value is not found, it
 will not be replaced and the '?{parameterOne}' value will remain in the output.
 <p>
 See Parameter to see how parameter values are determined.</li>
 <p>
 <li>If attribute <code>substituteVars</code> is <code>true</code>, then expressions <code>${...}</code> are substituted using
 system properties, session variables and application properties. Please note that no <code>${...}</code> patterns are left in the input. </li>
 </ol>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that iterates over rows in in ResultSet.

 Each row is send passed to the sender in the same format a row is usually returned from a query.
        
        
          
            
              
            
          
        
      
      
        
          Uses the (old) SMB 1 protocol.
 <br/>
 Only supports NTLM authentication.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Manager for SAP Logical Units of Work (LUWs).
 Used to begin, commit or rollback LUWs. A SapLUWManager can be placed before a number
 of SapSenders. The SapLUWManager and the SapSenders must each use the same value for
 luwHandleSessionKey. By doing so, they use the same connection to SAP. This allows to
 perform a commit on a number of actions.<br/>
 The placement of the the first SapLUWManager is optionan: By specifying a new
 luwHandleSessionKey a new handle is created implicitly.<br/>
 To explicityly commit or rollback a set of actions, a SapLUWManager-pipe can be used, with
 the action-attribute set apropriately.
        
        
          
            
              
            
          
        
      
      
        
          Pipe which scans TIBCO sources in Subversion and creates a report in xml.
        
        
          
            
              
            
          
        
      
      
        
          Sends a message to a Tibco queue.
        
        
          
            
              
            
          
        
      
      
        
          Plain extension to MessageSendingPipe that can be used directly in configurations.
 Only extension is that the setters for listener and sender have been made public, and can therefore
 be set from the configuration file.
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          Returns the number of bytes or characters in the input.
        
        
          
            
              
            
          
        
      
      
        
          Skip a number of bytes or characters from the input message.
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will automatically add the SOAP envelope XSD to the set of XSD's used for validation.

 Before the <code>outputSoapBody</code> attribute was introduced, two validators were used for a request-reply pattern (an inputValidator for the request and an outputValidator for the reply).
 These inputValidator and outputValidator were identical except for the child element of the SOAP body. Because validators use relatively a lot of memory, the <code>outputSoapBody</code> attribute was added which replaces the outputValidator.
 Both the request and the reply are then validated by the inputValidator.
 <p>To generate a wsdl with a soap action included one of the following properties must be set to the expected soapAction</p>
 <table border="1">
 <tr><td>wsdl.${adapterName}.${listenerName}.soapAction</td></tr>
 <tr><td>wsdl.${adapterName}.soapAction</td></tr>
 <tr><td>wsdl.soapAction</td></tr>
 </table>
        
        
          
            
              
            
          
        
      
      
        
          Pipe to wrap or unwrap a message from/into a SOAP Envelope.
        
        
          
            
              
            
          
        
      
      
        
          Sends a message to a Sender for each line of its input, that must be an InputStream.
        
        
          
            
              
            
          
        
      
      
        
          Stream an input stream to an output stream.
        
        
          
            
              
            
          
        
      
      
        
          Pipe for converting TEXT to XML.
        
        
          
            
              
            
          
        
      
      
        
          Breaks up the text input in blocks of a maximum length.
 By default, the maximum block length is 160 characters, to enable them to be sent as SMS messages.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that generates an UUID (Universally Unique Identifier).

 Only type <code>alphanumeric</code> guarantees a 100% unique identifier, type <code>numeric</code> has a 0.01% chance of exactly the same id in case of multiple calls on the same host within a few milliseconds.
        
        
          
            
              
            
          
        
      
      
        
          Assumes input to be the file name of a ZIP archive, and unzips it to a
 directory and/or an XML message.
 <br/>
 The output of each unzipped item is returned in XML as follows when
 collectFileContents is false:
 <pre>
  &lt;results count="num_of_items"&gt;
    &lt;result item="1"&gt;
      &lt;zipEntry&gt;name in ZIP archive of first item&lt;/zipEntry&gt;
      &lt;fileName&gt;filename of first item&lt;/fileName&gt;
    &lt;/result&gt;
    &lt;result item="2"&gt;
      &lt;zipEntry&gt;name in ZIP archive of second item&lt;/zipEntry&gt;
      &lt;fileName&gt;filename of second item&lt;/fileName&gt;
    &lt;/result&gt;
       ...
  &lt;/results&gt;
 </pre>

 <br/>
 The output of each unzipped item is returned in XML as follows when
 collectFileContents is true:
 <pre>
  &lt;results count="num_of_items"&gt;
    &lt;result item="1"&gt;
      &lt;zipEntry&gt;name in ZIP archive of first item&lt;/zipEntry&gt;
      &lt;fileContent&gt;content of first item&lt;/fileContent&gt;
    &lt;/result&gt;
    &lt;result item="2"&gt;
      &lt;zipEntry&gt;name in ZIP archive of second item&lt;/zipEntry&gt;
      &lt;fileContent&gt;content of second item&lt;/fileContent&gt;
    &lt;/result&gt;
       ...
  &lt;/results&gt;
 </pre>
 <br/>
 By default, this pipe takes care
 to produce unique file names, as follows. When the filename within
 the archive is:
 <pre>&lt;basename&gt; + "." + &lt;extension&gt;</pre>
 then the extracted filename (path omitted) becomes
 <pre>&lt;basename&gt; + &lt;unique number&gt; + "." + &lt;extension&gt;</pre>
 <br/>
        
        
          
            
              
            
          
        
      
      
        
          Generate WSDL of parent or specified adapter.
        
        
          
            
              
            
          
        
      
      
        
          XmlValidator that will read the XSD's to use from a WSDL. As it extends the
 SoapValidator is will also add the SOAP envelope XSD.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XQuery.
        
        
          
            
              
            
          
        
      
      
        
          Selects a forward, based on XPath evaluation
        
        
          
            
              
            
          
        
      
      
        
          Selects an exitState, based on either the content of the input message, by means
 of a XSLT-stylesheet, the content of a session variable or, by default, by returning the name of the root-element.
        
        
          
            
              
            
          
        
      
      
        
          Pipe that validates the input message against an XML Schema.
        
        
          
            
              
            
          
        
      
      
        
          <code>Pipe</code> that checks the well-formedness of the input message.
 If <code>root</code> is given then this is also checked.
        
        
          
            
              
            
          
        
      
      
        
          Perform an XSLT transformation with a specified stylesheet.
        
        
          
            
              
            
          
        
      
      
        
          Sends a message to a Sender for each entry of its input, that must be an ZipInputStream. The input of the pipe must be one of:
 <ul>
 	<li>String refering to a filename</li>
  <li>File</li>
  <li>InputStream</li>
 </ul>
 The message sent each time to the sender is the filename of the entry found in the archive.
 The contents of the archive is available as a Stream or a String in a session variable.

 <br/>
        
        
          
            
              
            
          
        
      
      
        
          Pipe that creates a ZIP archive (on action close).
 <p>
 A chain of zipWriterPipes can be used to create a ZIP archive. You can use the pipe with different actions (see specified below).
 Action <code>CLOSE</code> will generate the ZIP archive which is returned as the pipe ouput.
 </p>
        
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
      
        sets URL to the pascal file with label-constants generated by the ADIOS-utility. Default: nnrscons.pas
      
    
    
      
        Transformation direction. Default: Adios2Xml
      
      
        
      
    
    
      
        Sets name of the rekenbox to be called
      
    
    
      
        Name of the SessionKey to retrieve the rekenbox name from
      
    
    
      
        Sets the name of the forward used when no conversion to XML was performed, because the input was already XML. Default: noconversion
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Charset to be used to encode the given input string Default: UTF-8
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Default: ENCODE
      
      
        
      
    
    
      
        Character encoding to be used to when reading input from strings for direction=encode or writing data for direction=decode.
      
    
    
      
        (Only used when direction=encode) Defines separator between lines. Special values: <code>auto</code>: platform default, <code>dos</code>: crlf, <code>unix</code>: lf Default: auto
      
    
    
      
        (Only used when direction=encode) Each line of encoded data will be at most of the given length (rounded down to nearest multiple of 4). If linelength &lt;= 0, then the output will not be divided into lines Default: 76
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
      
        Stylesheet to apply to each message, before sending it
      
    
    
      
        Alternatively: xpath-expression to create stylesheet from
      
    
    
      
        Namespace defintions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions. For some use other cases (NOT xpathExpression), one entry can be without a prefix, that will define the default namespace.
      
    
    
      
        Only valid for xpathexpression Default: text
      
      
        
      
    
    
      
        Force the transformer generated from the xpath-expression to omit the xml declaration Default: true
      
    
    
    
    
    
    
    
    
    
    
    
    
      
        Controls multiline behaviour. When set to a value greater than 0, it specifies the number of rows send, in a one block, to the sender. Default: 0
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
        For asynchronous communication, the server side may either use the messageID or the correlationID
 in the correlationID field of the reply message. Use this property to set the behaviour of the reply-listener. Default: CORRELATIONID
      
      
        
      
    
    
      
        Stylesheet to extract correlationid from message
      
    
    
      
        XPath expression to extract correlationid from message
      
    
    
      
        Namespace defintions for correlationIDXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceUri</code>-definitions
      
    
    
      
        Key of a PipelineSession-variable. If specified, the value of the PipelineSession variable is used as input for the XPathExpression or stylesheet, instead of the current input message
      
    
    
      
        Stylesheet to extract label from message
      
    
    
      
        XPath expression to extract label from message
      
    
    
      
        Namespace defintions for labelXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceUri</code>-definitions
      
    
    
      
        XPath expression to extract audit trail from message
      
    
    
      
        Namespace defintions for auditTrailXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceUri</code>-definitions
      
    
    
      
        Key of a PipelineSession-variable. If specified, the value of the PipelineSession variable is used as audit trail (instead of the default 'no audit trail)
      
    
    
      
        If set <code>true</code>, the input of the Pipe is used to extract audit trail, correlationid and label (instead of the wrapped input) Default: true
      
    
    
      
        Next to common usage in AbstractPipe, also strings in the error/logstore are masked
      
    
    
      
        (Only used when hideRegex is not empty and only applies to error/logstore) Default: all
      
      
        
      
    
    
      
        If set <code>true</code>, the XML Well-Formedness of the result is checked Default: false
      
    
    
      
        If set, besides the XML Well-Formedness the root element of the result is checked to be equal to the value set
      
    
    
      
        The message (e.g. 'receiver timed out') that is returned when the time listening for a reply message
 exceeds the timeout, or in other situations no reply message is received.
      
    
    
      
        The number of times a processing attempt is retried after a timeout or an exception is caught or after an incorrect reply is received (see also <code>retryXPath</code>) Default: 0
      
    
    
      
        The starting number of seconds waited after an unsuccessful processing attempt before another processing attempt is made. Each next retry this interval is doubled with a upper limit of <code>retryMaxInterval</code> Default: 1
      
    
    
      
        The maximum number of seconds waited after an unsuccessful processing attempt before another processing attempt is made Default: 600
      
    
    
      
        XPath expression evaluated on each technical successful reply. Retry is done if condition returns true
      
    
    
      
        Namespace defintions for retryXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceUri</code>-definitions
      
    
    
      
        If the previous call was a timeout, the maximum time <i>in seconds</i> after this timeout to presume the current call is also a timeout. Default: 0
      
    
    
      
        If set, the pipe returns a message from a file, instead of doing the regular process
      
    
    
      
        If not empty, a TimeoutException is thrown when the result equals this value (for testing purposes only)
      
    
    
      
        If not empty, a PipeRunException is thrown when the result equals this value (for testing purposes only)
      
    
  
  
    
    
    
      
        The functional name of this pipe. Can be referenced by the <code>path</code> attribute of a PipeForward.
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
      
        The SQL query text to be excecuted each time sendMessage() is called. When not set, the input message is taken as the query
      
    
    
      
        JNDI name of datasource to be used, can be configured via jmsRealm, too Default: jdbc.datasource.default
      
    
    
      
        Named parameters will be auto-detected by default. Every string in the query which equals <code>?{paramname}</code> will be replaced by the value of the corresponding parameter. The parameters don't need to be in the correct order and unused parameters are skipped.
      
    
    
      
        Remove trailing blanks from all result values. Default: true
      
    
    
      
        If set, the SQL dialect in which the queries are written and should be translated from to the actual SQL dialect
      
    
    
      
        When set <code>true</code>, exclusive row-level locks are obtained on all the rows identified by the select statement (e.g. by appending ' FOR UPDATE NOWAIT SKIP LOCKED' to the end of the query) Default: false
      
    
    
      
        when set and >=0, ' FOR UPDATE WAIT #' is used instead of ' FOR UPDATE NOWAIT SKIP LOCKED' Default: -1
      
    
    
      
        If true, then select queries are executed in a way that avoids taking locks, e.g. with isolation mode 'read committed' instead of 'repeatable read'. Default: false
      
    
    
      
        Controls automatically whether blobdata is stored compressed and/or serialized in the database Default: false
      
    
    
      
        controls whether blobdata is stored compressed in the database Default: true
      
    
  
  
    
    
  
  
    
      
        Controls multiline behaviour. If set to a value greater than 0, it specifies the number of rows send in a block to the sender. Default: 0 (one line at a time, no prefix of suffix)
      
    
    
      
        If <code>startPosition &gt;= 0</code>, this field contains the start position of the key in the current record (first character is 0);
 A sequence of lines with the same key is put in one block and send to the sender. Cannot be used in combination with blockSize. Default: -1
      
    
    
      
        If <code>endPosition &gt;= startPosition</code>, this field contains the end position of the key in the current record Default: -1
      
    
    
      
        If <code>true</code>, all items in a block are sent at once. If set false, items are sent individually, potentially leveraging block enabled sending capabilities of the sender Default: true
      
    
    
      
        If <code>combineBlocks = true</code>, this string is inserted at the start of each block. Requires <code>blockSize</code> or <code>startPosition</code> and <code>endPosition</code> to be set too. Default: &lt;block&gt;
      
    
    
      
        If <code>combineBlocks = true</code>, this string is inserted at the end of the set of lines. Requires <code>blockSize</code> or <code>startPosition</code> and <code>endPosition</code> to be set too. Default: &lt;/block&gt;
      
    
    
      
        This string is inserted at the start of each item
      
    
    
      
        This string is appended at the end of each item
      
    
    
      
        Escape XML characters in each item Default: false
      
    
  
  
    
    
      
        Stylesheet to apply to each message, before sending it
      
    
    
      
        Alternatively: xpath-expression to create stylesheet from
      
    
    
      
        Namespace defintions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions. For some use other cases (NOT xpathExpression), one entry can be without a prefix, that will define the default namespace.
      
    
    
      
        Only valid for xpathexpression Default: text
      
      
        
      
    
    
      
        Force the transformer generated from the xpath-expression to omit the xml declaration Default: true
      
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        Character encoding to be used to encode message before calculating checksum.
      
    
    
      
        Type of checksum to be calculated Default: MD5
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        when set <code>true</code> the string values to compare are considered to be xml strings and before the actual compare both xml strings are transformed to a canonical form Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        if <code>true</code> the pipe compresses, otherwise it decompress Default: false
      
    
    
      
        flag indicates whether the message is the content or the path to a file with the contents. for multiple files use ';' as delimiter Default: false
      
    
    
      
        flag indicates whether the result must be written to the message or to a file (filename = message) Default: true when outputDirectory is not set.
      
    
    
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Default: 2
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Name of the sessionKey that holds the certificate of the issuer who signed the CRL.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Specifies if the first line should be treated as header or as data Default: true
      
    
    
      
        Comma separated list of header names. If set, then <code>fileContainsHeader</code> defaults to false. If not set, headers are taken from the first line
      
    
    
      
        Character that separates fields Default: ,
      
    
    
      
        When set, character casing will be changed for the header
      
      
        
      
    
    
      
        Format the XML output in easy legible way
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The time <i>in milliseconds</i> the thread will be put to sleep Default: 5000
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        when <code>true</code>, a piperunexception is thrown. otherwise the output is only logged as an error (and returned in a xml string with 'error' tags) Default: true
      
    
    
      
        timeout in seconds of obtaining a result Default: 30
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
      
        the name of the table that contains the mapping Default: mapping
      
    
    
      
        the name of the column labels are stored in Default: label
      
    
    
      
        the name of the column source values are stored in Default: valuein
      
    
    
      
        the name of the column destination values are stored in Default: valueout
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        substring to start translation
      
    
    
      
        substring to end translation
      
    
    
      
        
      
    
    
      
        when set <code>true</code> special characters in <code>substringstart</code> and <code>substringend</code> are first translated to their xml equivalents Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        When <code>true</code>, a PipeRunException is thrown. Otherwise, the output is only logged as an error (and no rollback is performed). Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Name of the file containing the result message.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        comma separated list of attachment properties to list
      
    
    
      
        comma separated list of attachment properties not to list. When specified, 'onlyProperties' is ignored
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Element name (not an XPath-expression), qualified via attribute <code>namespaceDefs</code>, used to determine the 'root' of elements to be iterated over, i.e. the root of the set of child elements.
 When empty, the pipe will iterate over each direct child element of the root
      
    
    
      
        Element name (not an XPath-expression), qualified via attribute <code>namespaceDefs</code>, used to determine the type of elements to be iterated over, i.e. the element name of each of the child elements.
 When empty, the pipe will iterate over any direct child element of the root or specified containerElement
      
    
    
      
        XPath-expression used to determine the set of elements to be iterated over, i.e. the set of child elements. When empty, the effective value is \/*\/*, i.e. the pipe will iterate over each direct child element of the root.
 Be aware that memory consumption appears to increase with file size when this attribute is used. When possible, use containerElement and/or targetElement instead.
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) XSLT processor 2.0 or 3.0 will be used, supporting XPath 2.0 or 3.0 respectively, otherwise an XSLT processor 1.0 (org.apache.xalan), supporting XPath 1.0. N.B. Be aware that setting this other than 1 might cause the input file being read as a whole in to memory, as XSLT Streaming is currently only supported by the XSLT Processor that is used for xsltVersion=1 Default: 1
      
    
    
      
        If set <code>true</code> namespaces (and prefixes) are removed from the items just before forwarding them to the sender. N.B. This takes place <strong>after</strong> the transformation for <code>elementXPathExpression</code> if that is specified
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Key of the session variable to retrieve the output message from. When left unspecified, the input message is used as the key of the session variable
      
    
    
      
        <ul><li><code>string</code>: renders the contents</li><li><code>map</code>: converts a Map&lt;String, String&gt; object to a xml-string (&lt;items&gt;&lt;item name='...'&gt;...&lt;/item&gt;&lt;item name='...'&gt;...&lt;/item&gt;&lt;/items&gt;)</li></ul> Default: string
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        name of forward returned if principal has not been found
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        URL or base of URL to be used. When multiple URLs are defined (comma separated list), the first URL is used of which the server has an active state
      
    
    
      
        alias used to obtain credentials for authentication to host
      
    
    
      
        username used in authentication to host
      
    
    
      
        password used in authentication to host
      
    
    
      
        when set to <code>true</code>, temporary queues are skipped Default: false
      
    
    
      
        when set to <code>true</code>, the length of the queue message is returned instead of the queue message self (when parameter <code>queueName</code> is not empty) Default: false
      
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Hash Algorithm to use Default: HmacSHA256
      
      
        
      
    
    
      
        Character set to use for converting the secret from String to bytes Default: UTF-8
      
    
    
      
        Method to use for converting the hash from bytes to String Default: Base64
      
      
        
      
    
    
      
        The secret to hash with. Only used if no parameter secret is configured. The secret is only used when there is no authAlias specified, by attribute or parameter
      
    
    
      
        authAlias to retrieve the secret from (password field). Only used if no parameter authAlias is configured
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Reference to the session variable whose value is to be increased
      
    
    
      
        amount to increment the value. Can be set from the attribute or the parameter 'increment' Default: 1
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        the j2ee role(s) to check, if the user in multiple roles, the first specified role will be matched.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        forward returned when <code>true</code> Default: then
      
    
    
      
        forward returned when 'false' Default: else
      
    
    
      
        return elseforward when input is empty (or thenforward) Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Direction of the transformation. Default: JSON2XML
      
      
        
      
    
    
      
        When direction is JSON2XML, it wraps a root element around the converted message.
 When direction is XML2JSON, it includes the name of the root element as a key in the converted message. Default: TRUE when JSON2XML and FALSE when XML2JSON
      
    
    
      
        Format the output in easy legible way (currently only for XML)
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        When <code>true</code>, the xml result of the transformation is converted back to json Default: true
      
    
    
      
        Namespace definitions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions Default: j=http://www.w3.org/2013/XSL/json
      
    
  
  
    
    
      
        If true, then this pipe will process the XSLT while streaming in a different thread. Can be used to switch streaming xslt off for debugging purposes Default: set by appconstant xslt.streaming.default
      
    
    
      
        Location of stylesheet to apply to the input message
      
    
    
      
        Session key to retrieve stylesheet location. Overrides stylesheetName or xpathExpression attribute
      
    
    
      
        Size of cache of stylesheets retrieved from styleSheetNameSessionKey Default: 100
      
    
    
      
        Alternatively: XPath-expression to create stylesheet from
      
    
    
      
        Omit the XML declaration on top of the output. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code>, any output is reparsed before being handled as XML again. If not set, the stylesheet is searched for <code>@disable-output-escaping='yes'</code> and the value is set accordingly Default: false, if not set in stylesheet
      
    
    
      
        For xpathExpression only Default: text
      
      
        
      
    
    
      
        If set <code>true</code>, result is pretty-printed. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code> namespaces (and prefixes) in the input message are removed before transformation Default: false
      
    
    
      
        If set <code>true</code>, the transformer is enabled to handle lexical events, allowing it for example to process comments and to distinghuish CDATA from escaped text.
 Beware that this option can cause spurious NullPointerExceptions due to a race condition in streaming XSLT 1.0 processing in Xalan 2.7.2 Default: false
      
    
    
      
        If set <code>true</code> empty tags in the output are removed after transformation Default: false
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
    
  
  
    
    
    
  
  
    
      
        If true, then this pipe will process the XSLT while streaming in a different thread. Can be used to switch streaming xslt off for debugging purposes Default: set by appconstant xslt.streaming.default
      
    
    
      
        Location of stylesheet to apply to the input message
      
    
    
      
        Session key to retrieve stylesheet location. Overrides stylesheetName or xpathExpression attribute
      
    
    
      
        Size of cache of stylesheets retrieved from styleSheetNameSessionKey Default: 100
      
    
    
      
        Alternatively: XPath-expression to create stylesheet from
      
    
    
      
        Omit the XML declaration on top of the output. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code>, any output is reparsed before being handled as XML again. If not set, the stylesheet is searched for <code>@disable-output-escaping='yes'</code> and the value is set accordingly Default: false, if not set in stylesheet
      
    
    
      
        Namespace defintions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions. For some other use cases (NOT xpathExpression), one entry can be without a prefix, that will define the default namespace.
 If left empty, an the xpathExpression will match any namespace
      
    
    
      
        For xpathExpression only Default: text
      
      
        
      
    
    
      
        If set <code>true</code>, result is pretty-printed. If not set, the value specified in the stylesheet is followed Default: false, if not set in stylesheet
      
    
    
      
        If set <code>true</code> namespaces (and prefixes) in the input message are removed before transformation Default: false
      
    
    
      
        If set <code>true</code>, the transformer is enabled to handle lexical events, allowing it for example to process comments and to distinghuish CDATA from escaped text.
 Beware that this option can cause spurious NullPointerExceptions due to a race condition in streaming XSLT 1.0 processing in Xalan 2.7.2 Default: false
      
    
    
      
        If set <code>true</code> empty tags in the output are removed after transformation Default: false
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Auth Alias for the SharedSecret to be used when signing the JWT (using the HmacSHA256 algorithm)
      
    
    
      
        Shared secret to be used when signing the JWT (using the HmacSHA256 algorithm)
      
    
    
      
        JWT expirationTime in seconds, 0 to disable Default: 600
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        sets transformation direction. Possible values
 <ul>
   <li>"Xml2Label": transform an XML file to ascii</li>
   <li>"Label2Xml": transform an ascii file to XML</li>
 </ul>
 default: None
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        whether or not to write results to the logfile (testtool4&lt;instance.name&gt;) Default: false
      
    
    
      
        whether or not to write results to system out Default: false
      
    
    
      
        Set to <code>true</code> when the pipeline is triggered by a user (e.g. using an http based listener
 that will add a securityHandler session key) and you don't want the listener to check whether the user
 is autorised and/or you want the enforce the roles as configured for the Ladybug Default: false
      
    
    
      
        Set to <code>true</code> to enable Ladybug's report generator for the duration of the scheduled report runs
 then revert it to its original setting Default: false
      
    
    
      
        When set, reports with a full path (path + name) that matches with the specified regular expression are skipped. For example, \"/Unscheduled/.*\" or \".*SKIP\".
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Default: false
      
    
    
      
        Default: false
      
    
    
      
        The scenario sub directory to execute
      
    
    
      
        the larva log level: one of [debug], [pipeline messages prepared for diff], [pipeline messages], [wrong pipeline messages prepared for diff], [wrong pipeline messages], [step passed/failed], [scenario passed/failed], [scenario failed], [totals], [error] Default: wrong pipeline messages
      
      
        
      
    
    
      
        Default: 100ms
      
    
    
      
        the larva timeout in milliseconds Default: 10000
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
      
        when <code>true</code>, the memberOf attribute is also searched in all the found members Default: true
      
    
  
  
    
    
  
  
    
      
        Url to context to search in, e.g. 'ldaps://DOMAIN.EXT'.
      
    
    
      
        Host part of ldapProviderUrl. Only used when ldapProviderUrl not specified
      
    
    
      
        Port of ldapProviderUrl. Only used when ldapProviderUrl not specified
      
    
    
      
        Indication to use ldap or ldaps in ldapProviderUrl. Only used when ldapProviderUrl not specified Default: false
      
    
    
      
        BaseDN, e.g. CN=USERS,DC=DOMAIN,DC=EXT Default: false
      
    
    
      
        Alias used to obtain credentials to connect to ldap server
      
    
    
      
        Username used to obtain credentials to connect to ldap server
      
    
    
      
        Password used to obtain credentials to connect to ldap server
      
    
    
    
      
        PipeForward used when an exception is caught
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The dn of the group to search in when the parameter dnSearchIn is not set
      
    
    
      
        The dn of the member to search for when the parameter dnFind is not set
      
    
    
      
        when <code>true</code>, the member attribute is also searched in all the found members Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Path to the folder that serves as the root of this virtual filesystem. All specifications of folders or files are relative to this root.
 When the root is left unspecified, absolute paths to files and folders can be used
      
    
    
      
        Whether the LocalFileSystem tries to create the root folder if it doesn't exist yet.
      
    
  
  
    
    
  
  
    
      
        If parameter [action] is set, then the attribute action value will be overridden with the value of the parameter.
      
      
        
      
    
    
      
        Filename to operate on. If not set, the parameter filename is used. If that is not set either, the input is used
      
    
    
      
        Destination for move, copy or rename. If not set, the parameter destination is used. If that is not set either, the input is used
      
    
    
      
        Folder that is scanned for files when action=list. When not set, the root is scanned
      
    
    
      
        If <code>true</code>: if a non-existing folder is part of the fileName, it will be created. Default: false
      
    
    
      
        If set <code>true</code>, for actions create, write, move, copy or rename, the destination file is overwritten if it already exists Default: false
      
    
    
      
        For action=append: If set to a positive number, the file is rotated each day, and this number of files is kept. The inputFolder must point to the directory where the file resides Default: 0
      
    
    
      
        For action=append: If set to a positive number, the file is rotated when it has reached the specified size, and the number of files specified in numberOfBackups is kept. Size is specified in plain bytes, suffixes like 'K', 'M' or 'G' are not recognized. The inputFolder must point to the directory where the file resides Default: 0
      
    
    
      
        For the actions write and append, with rotateSize>0: the number of backup files that is kept. The inputFolder must point to the directory where the file resides Default: 0
      
    
    
      
        Filter of files to look for in inputFolder e.g. '*.inp'. Works with actions move, copy, delete and list
      
    
    
      
        Filter of files to be excluded when looking in inputFolder. Works with actions move, copy, delete and list
      
    
    
      
        If set to <code>true</code> then the folder and the content of the non empty folder will be deleted.
      
    
    
      
        If set to <code>true</code> then the system specific line separator will be appended to the file after executing the action. Works with actions write and append Default: false
      
    
    
      
        Charset to be used for read and write action
      
    
    
      
        If set to true then the folder will be deleted if it is empty after processing the action. Works with actions delete, readDelete and move
      
    
    
      
        OutputFormat Default: XML
      
      
        
      
    
    
      
        Filter for action <code>list</code>. Specify <code>FILES_ONLY</code>, <code>FOLDERS_ONLY</code> or <code>FILES_AND_FOLDERS</code>. Default: FILES_ONLY
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        If set to <code>true</code> the ThreadContext parameters will be exported from the current PipeLine up in the call tree. Default: false
      
    
    
      
        If set {@code true} the pipe will never forward to the {@code ExceptionForward} even if an error occurred during execution. Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        Default: OBFUSCATE
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Action to be taken when pipe is executed.
      
      
        
      
    
    
      
        Recipients to be used during encryption stage. If multiple, separate with ';' (semicolon)
      
    
    
      
        Emails of the senders. This will be used to verify that all the senders have signed the given message.
 If not set, and the action is verify; this pipe will validate that at least one person has signed.
 For signing action, it needs to be set to the email that was used to generate the private key
 "that is being used for this process.
      
    
    
      
        Path to the private key. It will be used when signing or decrypting.
      
    
    
      
        Password for the private key.
      
    
    
      
        Path to the recipient's public key. It will be used for encryption and verification.
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The lowercase characters to use. Default: ('a'..'z')
      
    
    
      
        The uppercase characters to use. Default: ('A'..'Z')
      
    
    
      
        The numbers to use. Default: ('0'..'9')
      
    
    
      
        The signs to use. Default: (;:_%$#@!&gt;&lt;)
      
    
    
      
        The number of lowercase characters in the generated password. Default: 2
      
    
    
      
        The number of digits in the generated password. Default: 2
      
    
    
      
        The number of sign characters in the generated password. Default: 2
      
    
    
      
        The number of uppercase characters in the generated password. Default: 2
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        name of sessionkey that holds the hash which will be used to validate the password (input of the pipe)
      
    
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        
      
    
    
      
        session key that contains the document that the attachments will be attached to. Only used when action is set to 'combine' Default: defaultMainDocumentSessionKey
      
    
    
      
        The session key used to store the main conversion result document. Only to be used when action is set to 'convert'. Default: documents
      
    
    
      
        The session-key in which result files are stored when documents are converted to PDF.

 <p>
 Conversion result files are stored as messages in the session, under keys numbered based
 on the value set here. If #isSaveSeparate() is {@code false} then only the main
 document is stored in the session, if it is {@code true} then each attachment is stored
 separately.
 </p>
 <p>
     For example, if a file is converted that has 2 attachments and #setSaveSeparate(boolean)
     is set to {@code true} then there will be the following 3 session keys (assuming the default value
     is unchanged):
     <ol>
         <li>{@code pdfConversionResultFiles1}</li>
         <li>{@code pdfConversionResultFiles2}</li>
         <li>{@code pdfConversionResultFiles3}</li>
     </ol>
     Each session key will contain a FileMessage referencing the contents of that PDF.
 </p> Default: pdfConversionResultFiles
      
    
    
      
        session key that contains the filename to be attached. Only used when the action is set to 'combine' Default: defaultFileNameToAttachSessionKey
      
    
    
      
        fonts folder to load the fonts. If not set then a temporary folder will be created to extract fonts from fonts.zip everytime. Having fontsDirectory to be set will improve startup time
      
    
    
    
      
        charset to be used to decode the given input message in case the input is not binary but character stream Default: UTF-8
      
    
    
      
        aspose license location including the file name. It can also be used without license but there some restrictions on usage. If license is in resource, license attribute can be license file name. If the license is in somewhere in filesystem then it should be full path to file including filename and starting with file://// prefix. classloader.allowed.protocols property should contain 'file' protocol
      
    
    
      
        when sets to false, converts the file including the attachments attached to the main file. when it is true, saves each attachment separately Default: false
      
    
    
      
        directory to save resulting pdf files after conversion. If not set then a temporary directory will be created and the conversion results will be stored in that directory.
      
    
    
      
        when set to true, external resources, such as stylesheets and images found in HTML pages, will be loaded from the internet Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Key of the session variable to store the input in
      
    
    
      
        Value to store in the <code>pipeLineSession</code>. If not set, the input of the pipe is stored
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Key of session variable to store systemdate in Default: systemDate
      
    
    
      
        Format to store date in Default: full ISO format: DateUtils.fullIsoFormat
      
    
    
      
        Time zone to use for the formatter Default: the default time zone for the JVM
      
    
    
      
        Set to a time <i>in milliseconds</i> to create a value that is different to the previous returned value by a PutSystemDateInSession pipe in
 this virtual machine or <code>-1 to disable</code>. The thread will sleep for the specified time before recalculating a new value. Set the
 timezone to a value without Daylight Saving Time (like GMT+1) to prevent this pipe to generate two equal value's when the clock is set back.
 <b>note:</b> When you're looking for a GUID parameter for your XSLT it might be better to use
 &lt;param name=&quot;guid&quot; pattern=&quot;{hostname}_{uid}&quot;/&gt;, see Parameter. Default: -1
      
    
    
      
        If <code>true</code>, the date/time returned will always be 2001-12-17 09:30:47 (for testing purposes only). It is overridden by the value of the pipelinesession key <code>stub4testtool.fixeddate</code> when it exists Default: false
      
    
    
      
        If set to 'true' then current time stamp in millisecond will be stored in the sessionKey Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Fixed name of the rekenbox (or wrapper) to be called. If empty, the name is determined from the request
      
    
    
      
        Directory on server where rekenbox-executable can be found
      
    
    
      
        Rekenbox template directory on server
      
    
    
      
        Directory on server where input and output files are (temporarily) stored
      
    
    
      
        Format of commandline of rekenbox. Possible values
 "straight": rekenbox is called like: rekenbox.exe inputFileName outputFileName templateDir
 "switches": rekenbox is called like: rekenbox.exe /IinputFileName /UoutputFileName /PtemplateDir
 "redirected": rekenbox is called like: rekenbox.exe inputFileName templateDir > outputFileName; (This method has not been fully tested)
      
    
    
      
        Extension of rekenbox-executable
      
    
    
      
        If <code>true</code>, input and output files are removed after the call to the rekenbox is finished
      
    
    
      
        Key in pipeLineSession to store rekenbox name in
      
    
    
      
        First part of filenames that communicate requests and replies to rekenbox
      
    
    
      
        Maximal number that will be concatenated to dataFilenamePrefix
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Name of the cache from which items are to be removed
      
    
    
      
        XPath expression to extract cache key from request message
      
    
    
      
        Output type of xpath expression to extract cache key from request message, must be 'xml' or 'text' Default: text
      
      
        
      
    
    
      
        Namespace defintions for keyXPath. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions
      
    
    
      
        Stylesheet to extract cache key from request message. Use in combination with cacheEmptyKeys to inhibit caching for certain groups of request messages
      
    
    
      
        Session key to use as input for transformation of request message to key by keyXPath or keyStyleSheet
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        name of the key of the entry in the <code>pipelinesession</code> to remove. if this key is empty the input message is interpretted as key. for multiple keys use ',' as delimiter
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Sets the string that is searched for. Newlines can be represented
 by the #setLineSeparatorSymbol(String).
      
    
    
      
        Sets the string that will replace each of the occurrences of the find-string. Newlines can be represented
 * by the #setLineSeparatorSymbol(String).
      
    
    
      
        sets the string that will represent the line-separator in the #setFind(String) and #setReplace(String) strings.
      
    
    
      
        Replace all characters that are non-printable according to the XML specification with
 the value specified in #setNonXmlReplacementCharacter(String).
 <p>
 <b>NB:</b> This will only replace or remove characters considered non-printable. This
 will not check if a given character is valid in the particular way it is used. Thus it will
 not remove or replace, for instance, a single {@code '&'} character.
 </p>
 <p>
 See also:
 	<ul>
 	    <li>XmlEncodingUtils replaceNonValidXmlCharacters</li>
 	    <li><a href="https://www.w3.org/TR/xml/#charsets">Character ranges specified in the XML Specification</a></li>
 	</ul>
 </p> Default: false
      
    
    
      
        character that will replace each non-valid xml character (empty string is also possible) (use &amp;#x00bf; for inverted question mark) Default: empty string
      
    
    
      
        Whether to allow Unicode supplementary characters (like a smiley) during replaceNonValidXmlCharacters Default: false
      
    
    
      
        Should properties (values between <code>${</code> and <code>}</code>) be resolved. Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        The destination, aka smb://xxx/yyy share
      
    
    
      
        The SMB share username
      
    
    
      
        The SMB share password
      
    
    
      
        Alias used to obtain credentials for the SMB share
      
    
    
      
        logon/authentication domain, in case the user account is bound to a domain such as Active Directory.
      
    
    
      
        when <code>true</code>, intermediate directories are created also Default: false
      
    
    
      
        controls whether hidden files are seen or not Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Hostname of the SMB share.
      
    
    
      
        Port to connect to. Default: 445
      
    
    
      
        Type of the authentication either 'NTLM' or 'SPNEGO'.
 When setting SPNEGO, the host must use the FQDN, and must be registered on the KDC with a valid SPN. Default: SPNEGO
      
      
        
      
    
    
      
        alias used to obtain credentials for the smb share
      
    
    
      
        the smb share username
      
    
    
      
        the smb share password
      
    
    
      
        NTLM only: logon/authentication domain, in case the user account is bound to a domain such as Active Directory.
      
    
    
      
        May not contain '\\' characters. The destination share, aka smb://xxx/yyy share.
      
    
    
      
        SPNEGO only:
 Key Distribution Center, typically hosted on a domain controller.
 Stored in <code>java.security.krb5.kdc</code>
      
    
    
      
        SPNEGO only:
 Kerberos Realm, case sensitive. Typically upper case and the same as the domain name.
 An Active Directory domain acts as a Kerberos Realm.
 Stored in <code>java.security.krb5.realm</code>
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        Name of the SapSystem used by this object
      
    
    
      
        One of: begin, commit, rollback, release
      
    
    
      
        Session key under which information is stored
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        URL or base of URL to be used. When multiple URLs are defined (comma separated list), the first URL is used of which the server has an active state
      
    
    
      
        alias used to obtain credentials for authentication to host
      
    
    
      
        username used in authentication to host
      
    
    
      
        password used in authentication to host
      
    
    
      
        The name of the queue which is used for browsing one queue
      
    
    
      
        Protocol of Tibco service to be called
      
      
        
      
    
    
      
        Maximum time in milliseconds to wait for a reply. 0 means no timeout. (Only for messageProtocol=RR) Default: 5000
      
    
    
      
        If empty then derived from queueName (if $messagingLayer='P2P' then '$applicationFunction' else '$operationName_$operationVersion)
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
      
      
      
      
    
  
  
    
      
      
      
      
    
  
  
    
    
    
  
  
    
      
        Action to be taken when pipe is executed. Default: SIGN
      
      
        
      
    
    
      
        The signing algorithm Default: ALGORITHM_DEFAULT
      
    
    
      
        Cryptography provider
      
    
    
      
        if true, the signature is (expected to be) base64 encoded Default: true
      
    
    
      
        Keystore to obtain signing key
      
    
    
      
        Type of keystore, can be pkcs12 or pem Default: pkcs12
      
      
        
      
    
    
      
        Alias used to obtain keystore password
      
    
    
      
        Keystore password
      
    
    
      
        Alias in keystore
      
    
    
      
        Alias used to obtain keystoreAlias password
      
    
    
      
        KeystoreAlias password
      
    
    
      
        Key manager algorithm. Can be left empty to use the servers default algorithm
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        Number of bytes (for binary input) or characters (for character input) to skip. An empty byte array or string is returned when skip is larger than the length of the input. Default: 0
      
    
    
      
        If length>=0 only these number of bytes (for binary input) or characters (for character input) is returned. Default: -1
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        If set, each record has to end with this string. If a line read doesn't end with this string more lines are added (including line separators) until the total record ends with the given string
      
    
    
      
        Marks the start of a new record. If set, a new record is started when this line is read.
      
    
    
      
        If set to <code>false</code>, the inputstream is not closed after it has been used Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        (only used for parameter <code>httprequest</code>) when true the first part is not put in a session key but returned to the pipeline (as the result of this pipe) Default: false
      
    
    
      
        (only used when <code>extractfirststringpart=true</code>) the session key to put the xml in with info about the stored parts Default: <code>multipartxml</code>
      
    
    
      
        (only used for parameter <code>httprequest</code>) when true parts are checked for antivirus scan returncode. these antivirus scan parts have been added by another application (so the antivirus scan is not performed in this pipe). for each file part an antivirus scan part have been added by this other application (directly after this file part) Default: false
      
    
    
      
        (only used for parameter <code>httprequest</code> and when <code>checkantivirus=true</code>) name of antivirus scan status parts Default: <code>antivirus_rc</code>
      
    
    
      
        (only used for parameter <code>httprequest</code> and when <code>checkantivirus=true</code>) name of antivirus scan message parts Default: <code>antivirus_msg</code>
      
    
    
      
        (only used for parameter <code>httprequest</code> and when <code>checkantivirus=true</code>) message of antivirus scan parts which indicates the antivirus scan passed Default: <code>pass</code>
      
    
    
      
        (only used for parameter <code>httprequest</code> and when <code>checkantivirus=true</code>) when true and the antivirusfailed forward is specified and the antivirus scan did not pass, a soap fault is returned instead of only a plain error message Default: false
      
    
    
      
        (only used for parameter <code>httprequest</code> and when <code>checkantivirus=true</code>) if not empty and the antivirusfailed forward is specified and the antivirus scan did not pass, the error message (or soap fault) is stored in this session key and the first string part is returned to the pipeline
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        The xml tag to encapsulate the text in
      
    
    
      
        Controls whether the lines of the input are places in separated &lt;line&gt; tags Default: false
      
    
    
      
        Replace all non xml chars (not in the <a href="http://www.w3.org/tr/2006/rec-xml-20060816/#nt-char">character range as specified by the xml specification</a>)
 with the inverted question mark (0x00bf) Default: true
      
    
    
      
        Controls whether the text to encapsulate should be put in a cdata section Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Set the maximum number of characters of a block Default: 160
      
    
    
      
        If true, try to break up the message at spaces, instead of in the middle of words Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Format of generated string. Default: alphanumeric
      
      
        
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Directory to extract the archive to
      
    
    
      
        Sessionkey with a directory value to extract the archive to
      
    
    
      
        If set <code>false</code>, only a small summary (count of items in zip) is returned Default: true
      
    
    
      
        If set <code>true</code>, the contents of the files in the zip are returned in the result xml message of this pipe. Please note this can consume a lot of memory for large files or a large number of files Default: false
      
    
    
      
        Comma separated list of file extensions. Files with an extension which is part of this list will be base64 encoded. All other files are assumed to have UTF-8 when reading it from the zip and are added as escaped xml with non-unicode-characters being replaced by inverted question mark appended with #, the character number and ; Default: false
      
    
    
      
        If set <code>false</code>, a suffix is added to the original filename to be sure it is unique Default: false
      
    
    
      
        If set <code>true</code>, the path of the zip entry will be preserved. Otherwise, the zip entries will be extracted to the root folder Default: false
      
    
    
      
        If set <code>true</code>, validation of directory is ignored Default: false
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        either parent (adapter of pipeline which contains this pipe) or input (name of adapter specified by input of pipe), adapter must be within the same Configuration Default: parent
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        name of the file (resource) on the classpath to read the xquery from
      
    
    
      
        name of the file on the file system to read the xquery from
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        a string to compare the result of the xpathExpression (or the input-message itself) to. If not specified, a non-empty result leads to the 'then'-forward, an empty result to 'else'-forward
      
    
    
      
        forward returned when output is <code>true</code> Default: then
      
    
    
      
        forward returned when output is <code>false</code> Default: else
      
    
    
      
        xpath expression to be applied to the input-message. if not set, no transformation is done
      
    
    
      
        Regular expression to be applied to the input-message (ignored if <code>xpathExpression</code> is specified).
 The input-message <b>fully</b> matching the given regular expression leads to the 'then'-forward
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan) Default: 2
      
    
    
      
        namespace definitions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions.
      
    
    
      
        controls namespace-awareness of XSLT transformation Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        stylesheet may return a string representing the forward to look up Default: <i>a stylesheet that returns the name of the root-element</i>
      
    
    
      
        xpath-expression that returns a string representing the forward to look up. It's possible to refer to a parameter (which e.g. contains a value from a sessionkey) by using the parameter name prefixed with $
      
    
    
      
        Namespace defintions for xpathExpression. Must be in the form of a comma or space separated list of <code>prefix=namespaceuri</code>-definitions. For some use other cases (NOT xpathExpression), one entry can be without a prefix, that will define the default namespace.
      
    
    
      
        Forward returned when the pipename derived from the stylesheet could not be found.
      
    
    
      
        Forward returned when the content, on which the switch is performed, is empty. if <code>emptyforwardname</code> is not specified, <code>notfoundforwardname</code> is used.
      
    
    
      
        If set to <code>2</code> or <code>3</code> a Saxon (net.sf.saxon) xslt processor 2.0 or 3.0 respectively will be used, otherwise xslt processor 1.0 (org.apache.xalan). <code>0</code> will auto-detect Default: 0
      
    
    
      
        Selected forward name will be stored in the specified session key.
      
    
    
      
        Session key that will be used to get the forward name from.
      
    
    
      
        controls namespace-awareness of XSLT transformation Default: true
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Session key used to store contents of each zip entry Default: zipdata
      
    
    
      
        If set to <code>false</code>, a string containing the contents of the entry is placed under the session key, instead of the inputstream to the contents Default: true
      
    
    
      
        If set to <code>false</code>, the inputstream is not closed after it has been used Default: true
      
    
    
      
        Charset used when reading the contents of the entry (only used if streamingContents=false) Default: utf-8
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
        Only for action='write': If set to <code>true</code>, the fields 'crc-32', 'compressed size' and 'uncompressed size' in the zip entry file header are set explicitly (note: compression ratio is zero) Default: false
      
    
  
  
    
    
  
  
    
      
        Collectors must be opened before you can write content to them, after it's closed you can no longer write to it. Default: WRITE
      
      
        
      
    
    
      
        Session key used to refer to collection. Must be specified with another value if multiple CollectorPipes are active at the same time in the same session Default: collection
      
    
  
  
    
    
  
  
    
      
        
          
            
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          1. This method first stores all database jobs that can are found in the Quartz Scheduler in a Map.
 2. It then loops through all records found in the database.
 3. If the job is found, remove it from the Map and compares it with the already existing scheduled job.
    Only if they differ, it overwrites the current job.
    If it is not present it add the job to the scheduler.
 4. Once it's looped through all the database jobs, loop through the remaining jobs in the Map.
    Since they have been removed from the database, remove them from the Quartz Scheduler
        
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
      
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
      
        
      
    
    
      
        Configuration on which job operates
      
    
    
      
        Adapter on which job operates
      
    
    
      
        Receiver on which job operates
      
    
  
  
    
    
  
  
    
      
    
  
  
    
    
      
        Name of the job
      
    
    
      
        Description of the job
      
    
    
      
        CRON expression that determines the frequency of execution.
 Can <code>not</code> be used in combination with Interval.
      
    
    
      
        Triggers the Job at the specified number of milliseconds. Keep cronExpression empty in order to use interval.
 Value <code>0</code> may be used to run once at startup of the application.
 A value of 0 in combination with function 'sendMessage' will set dependencyTimeout on the IbisLocalSender to -1 to keep waiting indefinitely instead of 60 seconds for the adapter to start.
      
    
    
      
        Number of threads that may execute concurrently Default: 1
      
    
    
      
        Number of messages displayed in ibisconsole Default: 10
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        The number of seconds the database driver will wait for a statement to execute. If the limit is exceeded, a TimeoutException is thrown. 0 means no timeout Default: 0
      
    
  
  
    
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
      
    
  
  
    
    
    
  
  
    
      
        The SQL query text to be executed
      
    
    
      
        JNDI name of datasource to be used Default: jdbc.datasource.default
      
    
    
      
        The number of seconds the database driver will wait for a statement to execute. If the limit is exceeded, a TimeoutException is thrown. 0 means no timeout Default: 0
      
    
  
  
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
        JavaListener to send the message to
      
    
    
      
        message to be sent into the pipeline
      
    
  
  
    
    
  
  
    
      
        
          
          
          
          
        
      
      
    
  
  
    
  
  
    
      
        
          
            
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          IMonitorAdapter that uses a sender to send its message.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
      
    
  
  
    
      
        The functional name of the object.
      
    
    
    
  
  
    
      
        
          
            
              
              
            
          
          
          
          
          
        
      
      
    
  
  
    
      
        
          A Trigger that starts its life with type = ALARM. The type of the trigger can be changed dynamically.
        
        
          
            
              
            
          
        
      
      
        
          A Trigger that starts its life with type = CLEARING. The type of the trigger can be changed dynamically.
        
        
          
            
              
            
          
        
      
    
  
  
    
    
    
  
  
    
    
    
  
  
    
      
      
    
  
  
    
    
    
    
      
        
      
    
    
      
        
      
    
    
      
        
      
    
    
    
  
  
    
    
    
  
  
    
      
        
          
          
          
          
        
      
      
    
  
  
    
      
        
          Shared HTTPSession, implements SharedResource so it can be set in the Configuration.xml
        
        
          
            
              
            
          
        
      
    
  
  
    
    
  
  
    
      
        The functional name of the object.
      
    
  
  
    
    
      
        Timeout in ms of obtaining a connection/result. Default: 10000
      
    
    
    
    
      
        Authentication alias used for authentication to the host
      
    
    
      
        Username used for authentication to the host
      
    
    
      
        Password used for authentication to the host
      
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
      
        If the Configuration should automatically start all Adapters and Jobs.
      
    
    
      
        Configurations should be wired through Spring, which in turn should call #setBeanName(String).
 Once the ConfigurationContext has a name it should not be changed anymore, hence
 super.setBeanName(String) only sets the name once.
 If not created by Spring, the setIdCalled flag in AbstractRefreshableConfigApplicationContext wont be set, allowing the name to be updated.

 The DisplayName will always be updated, which is purely used for logging purposes.
      
    
    
    
  
  
    
      
      
      
    
  
  
    
      
      
      
      
      
    
  
  
    
      
      
      
      
      
      
      
    
  
  
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    
  
  
    
      
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
        
          Fire & Forget protocol
        
      
      
        
          Request-Reply protocol
        
      
    
  
  
    
      
      
      
    
  
  
    
      
        
          Automatically determine the type of the outgoing jakarta.jms.Message based
 on the value of Message#isBinary().
        
      
      
        
          Create the outgoing message as TextMessage.
        
      
      
        
          Create the outgoing message as BytesMessage.
        
      
    
  
  
    
      
      
    
  
  
    
      
      
        
          auto or auto_acknowledge: Specifies that the session is to automatically acknowledge consumer receipt of
 messages when message processing is complete.
        
      
      
        
          client or client_acknowledge: Specifies that the consumer is to acknowledge all messages delivered in this session.
 The Frank application will acknowledge all messages processed correctly. The skipping of the acknowledgement of messages
 processed in error will cause them to be redelivered, thus providing an automatic retry.
        
      
      
        
          dups or dups_ok_acknowledge: Specifies that the session is to "lazily" acknowledge the
 delivery of messages to the consumer. "Lazy" means that the consumer can delay the acknowledgment
 of messages to the server until a convenient time; meanwhile the server might redeliver messages.
 This mode reduces the session overhead. If JMS fails, the consumer may receive duplicate messages.
        
      
    
  
  
    
      
      
    
  
  
    
      
      
      
      
    
  
  
    
      
      
      
      
    
  
  
    
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
      
      
    
  
  
    
      
        
          Clear
        
      
      
        
          Safe(SSL protocol only)
        
      
      
        
          Confidential(SSL protocol only)
        
      
      
        
          Private
        
      
    
  
  
    
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
    
  
  
    
      
        
          list files in a folder/directory, specified by attribute <code>inputFolder</code>, parameter <code>inputFolder</code> or input message
        
      
      
        
          show info about a single file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message
        
      
      
        
          read a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message
        
      
      
        
          like <code>read</code>, but deletes the file after it has been read
        
      
      
        
          move a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message, to a folder specified by attribute <code>destination</code> or parameter <code>destination</code>
        
      
      
        
          copy a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message, to a folder specified by attribute <code>destination</code> or parameter <code>destination</code>
        
      
      
        
          delete a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message
        
      
      
        
          create a folder/directory, specified by attribute <code>inputFolder</code>, parameter <code>inputFolder</code> or input message
        
      
      
        
          remove a folder/directory, specified by attribute <code>inputFolder</code>, parameter <code>inputFolder</code> or input message
        
      
      
        
          Creates file and writes contents, specified by parameter <code>contents</code> or input message, to a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message.
  At least one of the parameters must be specified. The missing parameter defaults to the input message. For streaming operation, the parameter <code>filename</code> must be specified.
        
      
      
        
          (only for filesystems that support 'append') append contents, specified by parameter <code>contents</code> or input message, to a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message.
  At least one of the parameters must be specified. The missing parameter defaults to the input message. For streaming operation, the parameter <code>filename</code> must be specified.
        
      
      
        
          create empty file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message
        
      
      
        
          change the name of a file, specified by attribute <code>filename</code>, parameter <code>filename</code> or input message, to the value specified by attribute <code>destination</code> or parameter <code>destination</code>
        
      
      
        
          (for MailFileSystems only:) forward an existing file, specified by parameter <code>contents</code> or input message, to a file, to an email address specified by attribute <code>destination</code> or parameter <code>destination</code>
        
      
      
        
          Specific to FileSystemSenderWithAttachments
        
      
    
  
  
    
      
      
      
    
  
  
    
      
        
          Create a document
        
      
      
        
          Delete a document
        
      
      
        
          Get the content of a document (and optional the properties)
        
      
      
        
          Perform a query that returns properties
        
      
      
        
          Update the properties of an existing document
        
      
      
        
          Get the (meta)data of a folder or document
        
      
      
        
          Determine action based on the incoming CmisEvent
        
      
    
  
  
    
      
      
      
    
  
  
    
      
        
          For queries that return data
        
      
      
        
          For queries that update a BLOB
        
      
      
        
          For queries that update a CLOB
        
      
      
        
          To execute Oracle PL/SQL package
        
      
      
        
          For queries that return no data
        
      
    
  
  
    
      
      
    
  
  
    
      
        
          Fire & Forget protocol
        
      
      
        
          Request-Reply protocol
        
      
    
  
  
    
      
        
          use the generated messageId as the correlationId in the selector for response messages
        
      
      
        
          set the correlationId of the pipeline as the correlationId of the message sent, and use that as the correlationId in the selector for response messages
        
      
      
        
          do not automatically set the correlationId of the message sent, but use use the value found in that header after sending the message as the selector for response messages
        
      
    
  
  
    
      
        
          The input message is sent unchanged as character data, like text, XML or JSON, with possibly parameter data appended
        
      
      
        
          The input message is sent unchanged as binary data
        
      
      
        
          Yields a x-www-form-urlencoded form entity
        
      
      
        
          Yields a multipart/form-data form entity
        
      
      
        
          Yields a MTOM multipart/related form entity
        
      
    
  
  
    
      
      
      
      
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
    
  
  
    
      
        
          Read the contents of an entry. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to read</li>
 	  <li>optional xml-inputmessage containing attributes to be returned</li>
 </ul>
        
      
      
        
          Create an attribute or an entry. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to create</li>
 	  <li>xml-inputmessage containing attributes to create</li>
 </ul>
        
      
      
        
          Update an attribute or an entry. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to update</li>
 	  <li>xml-inputmessage containing attributes to update</li>
 	  <li>optional parameter 'newEntryName', new RDN of entry</li>
 </ul>
        
      
      
        
          Delete an attribute or an entry. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to delete</li>
 	  <li>when manipulationSubject is set to attribute: xml-inputmessage containing attributes to be deleted</li>
 </ul>
        
      
      
        
          Search for an entry in the direct children of the specified root. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to read</li>
    <li>parameter 'filterExpression', specifying the entries searched for</li>
 	  <li>optional attribute 'attributesReturned' containing attributes to be returned</li>
 </ul>
        
      
      
        
          Search for an entry in the complete tree below the specified root. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to read</li>
    <li>parameter 'filterExpression', specifying the entries searched for</li>
 	  <li>optional attribute 'attributesReturned' containing attributes to be returned</li>
 </ul>
        
      
      
        
          Get a list of the direct children of the specifed root. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to read</li>
 	  <li>optional attribute 'attributesReturned' containing attributes to be returned</li>
 </ul>
        
      
      
        
          Get a copy of the complete tree below the specified root. Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of entry to read</li>
 	  <li>optional attribute 'attributesReturned' containing attributes to be returned</li>
 </ul>
        
      
      
        
          Check username and password against LDAP specifying principal and credential using parameters. Configuration requirements:
 <ul>
 	  <li>parameter 'principal', resolving to RDN of user who's password should be verified</li>
 	  <li>parameter 'credentials', password to verify</li>
 </ul>
        
      
      
        
          Typical user change-password operation (one of the two methods to modify the unicodePwd attribute in AD (http://support.microsoft.com/kb/263991)). Configuration requirements:
 <ul>
 	  <li>parameter 'entryName', resolving to RDN of user who's password should be changed</li>
 	  <li>parameter 'oldPassword', current password, will be encoded as required by Active Directory (a UTF-16 encoded Unicode string containing the password surrounded by quotation marks) before sending it to the LDAP server. It's advised to set attribute hidden to true for parameter.</li>
 	  <li>parameter 'newPassword', new password, will be encoded as required by Active Directory (a UTF-16 encoded Unicode string containing the password surrounded by quotation marks) before sending it to the LDAP server. It's advised to set attribute hidden to true for parameter.</li>
 </ul>
        
      
    
  
  
    
      
      
    
  
  
    
      
      
      
    
  
  
    
      
        
          to mask the entire string
        
      
      
        
          to only mask the first half of the string
        
      
    
  
  
    
      
      
      
      
      
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
      
      
      
      
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
      
      
      
      
      
      
    
  
  
    
      
        
          Don't stop the receiver when an error occurs.
        
      
      
        
          If an error occurs (e.g. connection is lost) the receiver will be stopped and marked as ERROR
 Once every <code>recover.adapters.interval</code> it attempts to (re-) start the receiver.
        
      
      
        
          Stop the receiver when an error occurs.
        
      
    
  
  
    
      
      
    
  
  
    
      
        
          Support a current transaction; create a new one if none exists.
        
      
      
        
          Support a current transaction; execute non-transactionally if none exists.
        
      
      
        
          Support a current transaction; throw an exception if no current transaction exists.
        
      
      
        
          Create a new transaction, suspending the current transaction if one exists.
        
      
      
        
          Do not support a current transaction; rather always execute non-transactionally.
        
      
      
        
          Do not support a current transaction; throw an exception if a current transaction exists.
        
      
    
  
  
    
      
        
          Renders the contents of the first node (in combination with xslt or xpath). Please note that
 if there are child nodes, only the contents are returned, use <code>XML</code> if the xml tags are required
        
      
      
        
          Renders an xml-nodeset as an xml-string (in combination with xslt or xpath). This will include the xml tags
        
      
      
        
          Renders the CONTENTS of the first node as a nodeset
 that can be used as such when passed as xslt-parameter (only for XSLT 1.0).
 Please note that the nodeset may contain multiple nodes, without a common root node.
 N.B. The result is the set of children of what you might expect it to be...
        
      
      
        
          Renders XML as a DOM document; similar to <code>node</code>
		with the distinction that there is always a common root node (required for XSLT 2.0)
        
      
      
        
          Converts the result to a Date, by default using formatString <code>yyyy-MM-dd</code>.
 When applied as a JDBC parameter, the method setDate() is used
        
      
      
        
          Converts the result to a Date, by default using formatString <code>HH:mm:ss</code>.
 When applied as a JDBC parameter, the method setTime() is used
        
      
      
        
          Converts the result to a Date, by default using formatString <code>yyyy-MM-dd HH:mm:ss</code>.
 When applied as a JDBC parameter, the method setTimestamp() is used
        
      
      
        
          Similar to <code>DATETIME</code>, except for the formatString that is <code>yyyy-MM-dd HH:mm:ss.SSS</code> by default
        
      
      
        
          Converts the result from a XML formatted dateTime to a Date.
 When applied as a JDBC parameter, the method setTimestamp() is used
        
      
      
        
          Converts the result to a Number, using decimalSeparator and groupingSeparator.
 When applied as a JDBC parameter, the method setDouble() is used
        
      
      
        
          Converts the result to an Integer
        
      
      
        
          Converts the result to a Boolean
        
      
      
        
          Forces the parameter value to be treated as binary data (e.g. when using a SQL BLOB field).
 When applied as a JDBC parameter, the method setBinaryStream() or setBytes() is used
        
      
      
        
          Forces the parameter value to be treated as character data (e.g. when using a SQL CLOB field).
 When applied as a JDBC parameter, the method setCharacterStream() or setString() is used
        
      
      
        
          Used for StoredProcedure OUT parameters when the database type is a {@code CURSOR} or java.sql.JDBCType#REF_CURSOR.
 See also org.frankframework.jdbc.StoredProcedureQuerySender.
 <br/>
 DEPRECATED: Type LIST can also be used in larva test to Convert a List to an xml-string (&lt;items&gt;&lt;item&gt;...&lt;/item&gt;&lt;item&gt;...&lt;/item&gt;&lt;/items&gt;)
        
      
    
  
  
    
      
        
          Temporary
        
      
      
        
          Permanent
        
      
    
  
  
    
      
      
      
        
          No wrapping or unwrapping will be done
        
      
      
        
          Try to auto-detect the value
        
      
    
  
  
    
      
      
    
  
  
    
      
        
          ifsa2tibco
        
      
      
        
          Regular
        
      
      
        
          Business Integration Services
        
      
    
  
  
    
      
      
    
  
  
    
      
      
    
  
  
    
      
      
      
    
  
  
    
      
        
          Transform an Adios-XML file to ASCII-Adios
        
      
      
        
          Transform an ASCII-Adios file to Adios-XML
        
      
    
  
  
    
      
      
    
  
  
    
      
      
      
      
      
      
    
  
  
    
      
        
          Gzip format; also used when direction is compress and resultIsContent=<code>true</code>
 or when direction is decompress and messageIsContent=<code>true</code>
        
      
      
        
          Zip format; also used when direction is compress and resultIsContent=<code>false</code>
 or when direction is decompress and messageIsContent=<code>false</code>
        
      
    
  
  
    
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
      
    
  
  
    
      
      
      
      
      
      
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
        
          Encrypts the given input. Requires the publicKey to be set to recipients public key, and recipients to be set to recipients email addresses.
        
      
      
        
          Encrypts and then signs the given input. On top of the requirements for Encrypt action, signing requires senders to bet set for user's email; and secretKey & secretPassword to be set to private key's path and it's password (password is optional, if private key does not have protection).
        
      
      
        
          Decrypts the given input. Requires secretKey and secretPassword to bet set to private key's path and it's password. Just like signing, password is not required, if private key does not have protection.
        
      
      
        
          Decrypts and verifies the given input. On top of the requirements for Decrypt action, verification expects list of senders' email's and corresponding public keys. However, sender emails does not have to be set, and in that case, this pipe will only validate that someone signed the input.
        
      
    
  
  
    
      
      
    
  
  
    
      
        
          Request-Reply
        
      
      
        
          Fire & Forget
        
      
    
  
  
    
      
        
          signs the input
        
      
      
        
          verifies a signature
        
      
    
  
  
    
      
        
          the UUID will not have a fixed length which will be about 42
        
      
      
        
          a UUID with fixed length 31 will be generated
        
      
    
  
  
    
      
        
          To initiate a new collection
        
      
      
        
          Add an item to to an existing collection
        
      
      
        
          Combination of WRITE and CLOSE: Add an item to to an existing collection, then finalize the collection
        
      
      
        
          Finalize the collection
        
      
    
  
  
    
      
        
          No logging
        
      
      
        
          Logs information from adapter level messages
        
      
      
        
          Logs information from pipe messages
        
      
    
  
  
    
      
      
      
      
    
  
  
    
      
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
      
    
  
  
    
      
      
      
      
    
  
  
    
      The value of the parameter, or the base for transformation using xpathExpression or stylesheet, or formatting.
    
  
  
    
      Key of a PipelineSession-variable. <br/>If specified, the value of the PipelineSession variable is used as input for
 the xpathExpression or stylesheet, instead of the current input message. <br/>If no xpathExpression or stylesheet are
 specified, the value itself is returned. <br/>If the value '*' is specified, all existing sessionkeys are added as
 parameter of which the name starts with the name of this parameter. <br/>If also the name of the parameter has the
 value '*' then all existing sessionkeys are added as parameter (except tsReceived)
    
  
  
    
      key of message context variable to use as source, instead of the message found from input message or sessionKey itself
    
  
  
    
      Instead of a fixed <code>sessionKey</code> it's also possible to use a XPath expression applied to the input message to extract the name of the session-variable.
    
  
  
    
      If the result of sessionKey, xpathExpression and/or stylesheet returns null or an empty string, this value is returned
    
  
  
    
      Comma separated list of methods (<code>defaultValue</code>, <code>sessionKey</code>, <code>pattern</code>, <code>value</code> or <code>input</code>) to use as default value. Used in the order they appear until a non-null value is found. Default: <code>defaultValue</code>
    
  
  
    
      Value of parameter is determined using substitution and formatting, following MessageFormat syntax with named parameters. The expression can contain references
 to <code>session-variables</code> or other <code>parameters</code> using the {name-of-parameter} and is formatted using java.text.MessageFormat.
 <br/><b>NB: When referencing other <code>parameters</code> these MUST be defined before the parameter using pattern substitution.</b>
 <br/>
 <br/>
 If for instance <code>fname</code> is a parameter or session-variable that resolves to Eric, then the pattern
 'Hi {fname}, how do you do?' resolves to 'Hi Eric, do you do?'.<br/>
 The following predefined reference can be used in the expression too:<ul>
 <li>{now}: the current system time</li>
 <li>{uid}: an unique identifier, based on the IP address and java.rmi.server.UID</li>
 <li>{uuid}: an unique identifier, based on the IP address and java.util.UUID</li>
 <li>{hostname}: the name of the machine the application runs on</li>
 <li>{username}: username from the credentials found using authAlias, or the username attribute</li>
 <li>{password}: password from the credentials found using authAlias, or the password attribute</li>
 <li>{fixeddate}: fake date, for testing only</li>
 <li>{fixeduid}: fake uid, for testing only</li>
 <li>{fixedhostname}: fake hostname, for testing only</li>
 </ul>
 A guid can be generated using {hostname}_{uid}, see also
 <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/rmi/server/uid.html">http://java.sun.com/j2se/1.4.2/docs/api/java/rmi/server/uid.html</a> for more information about (g)uid's or
 <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/uuid.html">http://docs.oracle.com/javase/1.5.0/docs/api/java/util/uuid.html</a> for more information about uuid's.
 <br/>
 When combining a date or time <code>pattern</code> like {now} or {fixeddate} with a DATE, TIME, DATETIME or TIMESTAMP <code>type</code>, the effective value of the attribute
 <code>formatString</code> must match the effective value of the formatString in the <code>pattern</code>.
    
  
  
    
      If set <code>true</code> pattern elements that cannot be resolved to a parameter or sessionKey are silently resolved to an empty string
    
  
  
    
      If set (>=0) and the length of the value of the parameter falls short of this minimum length, the value is padded Default: -1
    
  
  
    
      If set (>=0) and the length of the value of the parameter exceeds this maximum length, the length is trimmed to this maximum length Default: -1
    
  
  
    
      If set to <code>true</code>, the value of the parameter will not be shown in the log (replaced by asterisks) Default: <code>false</code>
    
  
  
    
      Set the mode of the parameter, which determines if the parameter is an INPUT, OUTPUT, or INOUT.
 This parameter only has effect for StoredProcedureQuerySender.
 An OUTPUT parameter does not need to have a value specified, but does need to have the type specified.
 Parameter values will not be updated, but output values will be put into the result of the
 StoredProcedureQuerySender.
 <b/>
 If not specified, the default is INPUT.
    
    
      
    
  
  
    
      Folder that is scanned for files. If not set, the root is scanned
    
  
  
    
      Folder where files are stored <i>while</i> being processed
    
  
  
    
      Folder where files are stored <i>after</i> being processed
    
  
  
    
      Folder where files are stored <i>after</i> being processed, in case the exit-state was not equal to <code>success</code>
    
  
  
    
      Folder where messages from the error folder can be put on Hold, temporarily
    
  
  
    
      Folder where a copy of every file that is received is stored
    
  
  
    
      If set to <code>true</code>, the folders to look for files and to move files to when being processed and after being processed are created if they are specified and do not exist Default: false
    
  
  
    
      If set <code>true</code>, the file processed will be deleted after being processed, and not stored Default: false
    
  
  
    
      Number of copies held of a file with the same name. Backup files have a dot and a number suffixed to their name. If set to 0, no backups will be kept. Default: 0
    
  
  
    
      If set <code>true</code>, the destination file will be deleted if it already exists Default: false
    
  
  
    
      If <code>true</code>, the file modification time is used in addition to the filename to determine if a file has been seen before Default: false
    
  
  
    
      Minimal age of file <i>in milliseconds</i>, to avoid receiving a file while it is still being written Default: 1000
    
  
  
    
      Key of Property to use as messageId. If not set, the filename of the file as it was received in the inputFolder is used as the messageId Default: for MailFileSystems: Message-ID
    
  
  
    
      If set <code>true</code>, no browsers for process folders are generated Default: false
    
  
  
    
      Filter of files to look for in inputFolder e.g. '*.inp'.
    
  
  
    
      Filter of files to be excluded when looking in inputFolder.
    
  
  
    
      If set, an XML with all message properties is provided under this key
    
  
  
    
      Name of the JMS destination (queue or topic) to use for sending replies. If <code>useReplyTo</code>=<code>true</code>,
 the sender specified reply destination takes precedence over this one.
    
  
  
    
      Value of the JMSType field of the reply message Default: not set by application
    
  
  
    
      Controls mode that reply messages are sent with Default: NON_PERSISTENT
    
    
      
    
  
  
    
      Sets the priority that is used to deliver the reply message. Ranges from 0 to 9. Effectively the default priority is set by JMS to 4, <code>-1</code> means not set and thus uses the JMS default Default: -1
    
  
  
    
      Time <i>in milliseconds</i> after which the reply-message will expire Default: 0
    
  
  
  
  
  
    
      sessionKey to store the SOAP header of the incoming message Default: soapHeader
    
  
  
    
      The JMS jakarta.jms.Message class for the outgoing message.
 Currently supported are MessageClass#TEXT for JMS TextMessage,
 MessageClass#BYTES for JMS BytesMessage, or MessageClass#AUTO for auto-determination
 based on whether the input Message is binary or character.
 <p>
 Defaults to MessageClass#AUTO, unless the default is overridden in AppConstants with property {@code jms.messageClass.default}
 </p>
    
    
      
    
  
  
    
      Type of the messageing destination.
 This function also sets the <code>useTopicFunctions</code> field,
 that controls whether Topic functions are used or Queue functions. Default: QUEUE
    
    
      
    
  
  
    
      If not transacted, the way the application informs the JMS provider that it has successfully received a message. Default: auto
    
    
      
    
  
  
    
      Only applicable for topics Default: DURABLE
    
    
      
    
  
  
    
      Used when destinationType = QUEUE.
 The JNDI-name of the queueConnectionFactory to use to connect to a <code>queue</code> if #isTransacted() returns <code>false</code>.
 The corresponding connection factory should be configured not to support XA transactions.
    
  
  
    
      Used when destinationType = TOPIC.
 The JNDI-name of the connection factory to use to connect to a <i>topic</i> if #isTransacted() returns <code>false</code>.
 The corresponding connection factory should be configured not to support XA transactions.
    
  
  
    
      Transform the value of the correlationid to a hexadecimal value if it starts with id: (preserving the id: part).
 Useful when sending messages to MQ which expects this value to be in hexadecimal format when it starts with id:, otherwise generating the error: MQJMS1044: String is not a valid hexadecimal number Default: false
    
  
  
    
      Prefix to check before executing correlationIdToHex. If empty (and correlationIdToHex equals true) all correlationid's are transformed, this is useful in case you want the entire correlationId to be transformed (for example when the receiving party doesn't allow characters like a colon to be present in the correlationId). Default: id:
    
  
  
    
      The time <i>in milliseconds</i> it takes for the message to expire. If the message is not consumed before, it will be lost. Must be a positive value for request/reply type of messages, 0 disables the expiry timeout Default: 0
    
  
  
    
      If set (>=0) and the length of the correlationId exceeds this maximum length, the correlationId is trimmed from the left side of a string to this maximum length Default: -1
    
  
  
    
      If set, the value of this attribute is used as a selector to filter messages. Default: 0 (unlimited)
    
  
  
    
      If set <code>false</code>, the destinationName is used directly instead of performing a JNDI lookup Default: true
    
  
  
    
      maps to the field context.security_authentication
    
  
  
    
      username to connect to context, maps to context.security_credentials
    
  
  
    
      class to use as initial context factory
    
  
  
    
      Sets the value of providerURL
    
  
  
    
      maps to the field context.security_protocol
    
  
  
    
      maps to the field context.url_pkg_prefixes
    
  
  
    
      username to connect to context, maps to context.security_principal
    
  
  
    
      authentication alias, may be used to override principal and credential-settings
    
  
  
  
  
    
      when true, then PollingListener container will execute getRawMessage() only when hasRawMessageAvailable() has returned true. This avoids rolling back a lot of XA transactions, that appears to be problematic on MS SQL Server Default: true
    
  
  
    
      (only used when <code>peekUntransacted</code>=<code>true</code>) peek query to determine if the select query should be executed. Peek queries are, unlike select queries, executed without a transaction and without a rowlock Default: selectQuery
    
  
  
  
    
      JNDI name of datasource to be used, can be configured via jmsRealm, too Default: jdbc.datasource.default
    
  
  
    
      informs the sender that the obtained connection is from a pool (and thus connections are reused and never closed) Default: true
    
  
  
    
      Alias of the table, that can be used in selectCondition Default: t
    
  
  
    
      (optional) Comma separated list of fields determining the order in which messages are processed
    
  
  
    
      (optional) Maximum length of strings to be stored in commentField, or -1 for unlimited Default: 1000
    
  
  
    
      Additional condition for a row to belong to this TableListener. Impacts all process states
    
  
  
    
      Index of the field in the ImportParameterList of the RFC function that contains the correlationId Default: 0
    
  
  
    
      Name of the field in the ImportParameterList of the RFC function that contains the correlationId
    
  
  
    
      Index of the field in the ImportParameterList of the RFC function that contains the whole request message contents Default: 0
    
  
  
    
      Name of the field in the ImportParameterList of the RFC function that contains the whole request message contents
    
  
  
    
      Index of the field in the ExportParameterList of the RFC function that contains the whole reply message contents Default: 0
    
  
  
    
      Name of the field in the ExportParameterList of the RFC function that contains the whole reply message contents
    
  
  
    
      Controls if the returned package content is db2 format or xml format.
 Possible values:
 <ul>
 <li>select:</li> xml content s expected
 <li><i>anything else</i>:</li> db2 content is expected
 </ul>
    
  
  
    
      When <code>true</code>, the value of the first column of the first row (or the startrow) is returned as the only result, as a simple non-xml value Default: false
    
  
  
    
      When <code>true</code> and <code>scalar</code> is also <code>true</code>, but returns no value, one of the following is returned:
 <ul>
 <li>'[absent]' no row is found</li>
 <li>'[null]' a row is found, but the value is a SQL-NULL</li>
 <li>'[empty]' a row is found, but the value is a empty string</li>
 </ul> Default: false
    
  
  
    
      Value used in result as contents of fields that contain no value (sql-null) Default: <i>empty string</i>
    
  
  
    
      Query that can be used to obtain result of side-effect of update-query, like generated value of sequence. Example: SELECT mysequence.currval FROM dual
    
  
  
    
      Named parameters will be auto-detected by default. Every string in the query which equals <code>?{paramname}</code> will be replaced by the value of the corresponding parameter. The parameters don't need to be in the correct order and unused parameters are skipped.
    
  
  
    
      when <code>true</code>, the result contains besides the returned rows also includes a header with information about the fetched fields Default: application default (true)
    
  
  
    
      Remove trailing blanks from all result values. Default: true
    
  
  
    
      When <code>true</code>, the result of sendMessage is the reply of the request. Default: true
    
  
  
    
      When set to <code>false</code>, the Outputstream is not closed after BLOB or CLOB has been written to it Default: true
    
  
  
    
      Charset used when reading a stream (that is e.g. going to be written to a BLOB or CLOB). When empty, the stream is copied directly to the BLOB, without conversion
    
  
  
    
      If true and scalar=false, multiline indented XML is produced Default: false
    
  
  
    
      Parameter that is used, if specified and not empty, to determine the destination. Overrides the <code>destination</code> attribute
    
  
  
    
      Name of the queue the reply is expected on. This value is sent in the JMSReplyTo-header with the message. Default: a dynamically generated temporary destination
    
  
  
    
      (Only used when <code>synchronous</code>=<code>true</code> and <code>replyToName</code> is set). Indicates whether the server uses the correlationId from the pipeline, the correlationId from the message or the messageId in the correlationId field of the reply. This requires the sender to have set the correlationId at the time of sending. Default: MESSAGEID
    
    
      
    
  
  
    
      Value of the JMSType field Default: not set by application
    
  
  
    
      Sets the priority that is used to deliver the message. Ranges from 0 to 9. Defaults to -1, meaning not set. Effectively the default priority is set by JMS to 4 Default: -1
    
  
  
    
      SOAP encoding style URI
    
  
  
    
      SOAP service namespace URI
    
  
  
    
      Name of parameter containing SOAP header Default: soapHeader
    
  
  
    
      session key to store SOAP header of reply Default: replySoapHeader
    
  
  
    
      A list of JMS headers of the response to add to the PipeLineSession
    
  
  
    
      When set larger than 0 and used as a child of an IteratingPipe, then the database calls are made in batches of this size. Only for queryType=other. Default: 0
    
  
  
    
      URL or base of URL to be used
    
  
  
    
      Parameter that is used to obtain URL; overrides url-attribute. Default: url
    
  
  
    
      The HTTP Method used to execute the request Default: <code>GET</code>
    
    
      
    
  
  
    
      Content-Type (superset of mimetype + charset) of the request, for <code>POST</code>, <code>PUT</code> and <code>PATCH</code> methods Default: text/html, when postType=<code>RAW</code>
    
  
  
    
      Charset of the request. Typically only used on <code>PUT</code> and <code>POST</code> requests. Default: UTF-8
    
  
  
    
      Comma separated list of parameter names which should be set as HTTP headers
    
  
  
    
      Comma separated list of parameter names that should not be added as request or body parameter, or as HTTP header, if they are empty. Set to '*' for this behaviour for all parameters
    
  
  
    
      If <code>true</code>, the HTML response is transformed to XHTML Default: false
    
  
  
    
      If set, the status code of the HTTP response is put in the specified sessionKey and the (error or okay) response message is returned.
 Setting this property has a side effect. If a 4xx or 5xx result code is returned and if the configuration does not implement
 the specific forward for the returned HTTP result code, then the success forward is followed instead of the exception forward.
    
  
  
  
    
      The maximum number of concurrent connections Default: 10
    
  
  
    
      The maximum number of times the execution is retried Default: 1 (for repeatable messages) else 0
    
  
  
    
      Endpoint to obtain OAuth accessToken. If <code>authAlias</code> or <code>username</code>( and <code>password</code>) are specified,
 then a PasswordGrant is used, otherwise a ClientCredentials grant. The obtained accessToken will be added to the regular requests
 in an HTTP Header 'Authorization' with a 'Bearer' prefix.
    
  
  
    
      If set to a non-negative value, then determines the time (in seconds) after which the token will be refreshed. Otherwise the token
 will be refreshed when it is half way its lifetime as defined by the <code>expires_in</code> clause of the token response,
 or when the regular server returns a 401 status with a challenge.
 If not specified, and the accessTokens lifetime is not found in the token response, the accessToken will not be refreshed preemptively. Default: -1
    
  
  
    
      Alias used to obtain client_id and client_secret for authentication to <code>tokenEndpoint</code>
    
  
  
    
      Client_id used in authentication to <code>tokenEndpoint</code>
    
  
  
    
      Client_secret used in authentication to <code>tokenEndpoint</code>
    
  
  
    
      Space or comma separated list of scope items requested for accessToken, e.g. <code>read write</code>. Only used when <code>tokenEndpoint</code> is specified
    
  
  
    
      if set true, clientId and clientSecret will be added as Basic Authentication header to the tokenRequest, instead of as request parameters
    
  
  
    
      Proxy host
    
  
  
    
      Proxy port Default: 80
    
  
  
    
      Alias used to obtain credentials for authentication to proxy
    
  
  
    
      Proxy username
    
  
  
    
      Proxy password
    
  
  
    
      Proxy realm
    
  
  
    
      Create a pre-emptive login context for the proxy connection(s).
    
  
  
    
      Disables the use of cookies, making the sender completely stateless Default: false
    
  
  
    
      resource URL to keystore or certificate to be used for authentication. If none specified, the JVMs default keystore will be used.
    
  
  
    
      Type of keystore Default: pkcs12
    
    
      
    
  
  
    
      Authentication alias used to obtain keystore password
    
  
  
    
      Default password to access keystore
    
  
  
    
      Key manager algorithm. Can be left empty to use the servers default algorithm
    
  
  
    
      Alias to obtain specific certificate or key in keystore
    
  
  
    
      Authentication alias to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
    
  
  
    
      Default password to authenticate access to certificate or key indicated by <code>keystoreAlias</code>
    
  
  
    
      Resource URL to truststore to be used for authenticating peer. If none specified, the JVMs default truststore will be used.
    
  
  
    
      Authentication alias used to obtain truststore password
    
  
  
    
      Default password to access truststore
    
  
  
    
      Type of truststore Default: jks
    
    
      
    
  
  
    
      Trust manager algorithm. Can be left empty to use the servers default algorithm
    
  
  
    
      If <code>true</code>, the hostname in the certificate will be checked against the actual hostname of the peer
    
  
  
    
      If <code>true</code>, self signed certificates are accepted Default: false
    
  
  
    
      If <code>true</code>, CertificateExpiredExceptions are ignored Default: false
    
  
  
    
      If <code>true</code>, a redirect request will be honoured, e.g. to switch to HTTPS Default: true
    
  
  
    
      If true, besides http status code 200 (OK) also the code 301 (MOVED_PERMANENTLY), 302 (MOVED_TEMPORARILY) and 307 (TEMPORARY_REDIRECT) are considered successful Default: false
    
  
  
    
      Controls whether connections checked to be stale, i.e. appear open, but are not. Default: true
    
  
  
    
      Used when StaleChecking=<code>true</code>. Timeout after which an idle connection will be validated before being used. Default: 5000 ms
    
  
  
    
      Maximum Time to Live for connections in the pool. No connection will be re-used past its timeToLive value. Default: 900 s
    
  
  
    
      Maximum Time for connection to stay idle in the pool. Connections that are idle longer will periodically be evicted from the pool Default: 10 s
    
  
  
    
      Secure socket protocol (such as 'TLSv1.2') to use when a SSLContext object is generated. Default: TLSv1.2
    
  
  
    
      Allows you to choose which CipherSuites are used when connecting to an endpoint. Works in tandem with {@code protocol} as the provided Suite may not be valid for the provided Protocol
 See the Java Security Standard Algorithm Names Specification for all available options. Note that these may differ depending on the JRE you're using.
    
  
  
    
      If set <code>true</code> the input is written to the log file, at DEBUG level Default: false
    
  
  
    
      userId on the smtphost
    
  
  
    
      Set the default value of the subject: header, if not specified in message itself
    
  
  
    
      Set the default from: header, if not specified in message itself
    
  
  
    
      When this name is used, it will be followed by a number which is equal to the node's position Default: attachment
    
  
  
    
      when messageType is not specified defaultMessageType will be used Default: text/plain
    
  
  
    
      when messageBase64 is not specified defaultMessageBase64 will be used Default: false
    
  
  
    
      NDR return address when mail cannot be delivered. This adds a Return-Path header Default: MAIL FROM attribute
    
  
  
    
      Comma separated list of domains to which mails can be send, domains not on the list are filtered out. Empty allows all domains
    
  
  
    
      Possible values are <code>E</code> (error store), <code>M</code> (message store), <code>L</code> (message log for Pipe) or <code>A</code> (message log for Receiver).<br/>
 Receiver will always set type to <code>E</code> for errorStorage and always set type to <code>A</code> for messageLog. SenderPipe will set type to <code>L</code> for messageLog (when type isn't specified).<br/>
 See MessageStoreSender for type <code>M</code>. Default: <code>E</code> for errorStorage on Receiver<br/><code>A</code> for messageLog on Receiver<br/><code>L</code> for messageLog on Pipe
    
  
  
    
      The name of the column slotids are stored in Default: SLOTID
    
  
  
    
      The name of the column types are stored in Default: TYPE
    
  
  
    
      The name of the column that stores the hostname of the server Default: HOST
    
  
  
    
      The name of the sequence used to generate the primary key, for DBMSes that use sequences, like Oracle Default: seq_ibisstore
    
  
  
    
      If set to <code>true</code>, checks are performed if the table exists and is properly created Default: false
    
  
  
    
      The type of the column message themselves are stored in
    
  
  
    
      The type of the column that contains the primary key of the table
    
  
  
    
      The type of the column the timestamps are stored in
    
  
  
    
      The type of the columns messageId and correlationId, slotId and comments are stored in. N.B. <code>(100)</code> is appended for id's, <code>(1000)</code> is appended for comments.
    
  
  
    
      The time (in days) to keep the record in the database before making it eligible for deletion by a cleanup process. when set to -1, the record will live on forever Default: 30
    
  
  
    
      Schema owner to be used to check the database Default: &lt;current_schema&gt; (only for oracle)
    
  
  
    
      If set to <code>true</code>, the full message is stored with the log. Can be set to <code>false</code> to reduce table size, by avoiding to store the full message Default: true
    
  
  
    
      Timeout (in seconds) of transaction started to process a message. Default: <code>0</code> (use system default)
    
  
  
    
      The <code>transactionAttribute</code> declares transactional behavior of execution. It applies both to database transactions and XA transactions.
 The pipeline uses this to start a new transaction or suspend the current one when required.
 For developers: it is equal to <a href=\"https://docs.oracle.com/javaee/7/tutorial/transactions003.htm\">EJB transaction attribute</a>.
 Possible values for transactionAttribute:
   <table border=\"1\">
     <tr><th>transactionAttribute</th><th>callers Transaction</th><th>Pipeline excecuted in Transaction</th></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Required</td>    <td>none</td><td>T2</td></tr>
 											      <tr><td>T1</td>  <td>T1</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">RequiresNew</td> <td>none</td><td>T2</td></tr>
 											      <tr><td>T1</td>  <td>T2</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Mandatory</td>   <td>none</td><td>error</td></tr>
 											      <tr><td>T1</td>  <td>T1</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">NotSupported</td><td>none</td><td>none</td></tr>
 											      <tr><td>T1</td>  <td>none</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Supports</td>    <td>none</td><td>none</td></tr>
  										      <tr><td>T1</td>  <td>T1</td></tr>
     <tr><td colspan=\"1\" rowspan=\"2\">Never</td>       <td>none</td><td>none</td></tr>
 											      <tr><td>T1</td>  <td>error</td></tr>
   </table> Default: Supports
    
    
      
    
  
  
    
      If set, input is taken from this session key, instead of regular input
    
  
  
    
      If set, this fixed value is taken as input, instead of regular input
    
  
  
    
      If set and the input is empty, this fixed value is taken as input
    
  
  
    
      If set <code>true</code>, the result of the pipe is replaced with the original input (i.e. the input before configured replacements of <code>getInputFromSessionKey</code>, <code>getInputFromFixedValue</code> or <code>emptyInputReplacement</code>)
    
  
  
    
      If set, the pipe result is copied to a session key that has the name defined by this attribute. The
 pipe result is still written as the output message as usual.
    
  
  
    
      The maximum number of threads that may messages simultaneously.
 A value of 0 indicates an unlimited number of threads. Default: 0
    
  
  
    
      If set (>=0) and the character data length inside a xml element exceeds this size, the character data is chomped (with a clear comment)
    
  
  
    
      If set, the character data in this element is stored under a session key and in the message replaced by a reference to this session key: {sessionKey: + <code>elementToMoveSessionKey</code> + }
    
  
  
    
      (Only used when <code>elementToMove</code> is set) Name of the session key under which the character data is stored Default: ref_ + the name of the element
    
  
  
    
      Like <code>elementToMove</code> but element is preceded with all ancestor elements and separated by semicolons (e.g. 'adapter;pipeline;pipe')
    
  
  
    
      If durationThreshold >=0 and the duration of the message processing exceeded the value specified (in milliseconds) the message is logged informatory to be analyzed Default: -1
    
  
  
  
    
      If set <code>true</code>, compacted messages in the result are restored to their original format (see also  #setElementToMove(java.lang.String))
    
  
  
    
      Collect and aggregate Message size statistics
    
  
  
    
      when set to <code>true</code> a record is written to the security log when the pipe has finished successfully
    
  
  
    
      (only used when <code>writeToSecLog=true</code>) comma separated list of keys of session variables that is appended to the security log record
    
  
  
    
      when set, the value in AppConstants is overwritten (for this pipe only)
    
  
  
    
      Regular expression to mask strings in the log. For example, the regular expression <code>(?&lt;=&lt;password&gt;).*?(?=&lt;/password&gt;)</code>
 will replace every character between keys '&lt;password&gt;' and '&lt;/password&gt;'. <b>note:</b> this feature is used at adapter level,
 so a {@code hideRegex} set on one pipe affects all pipes in the pipeline (and multiple values in different pipes are combined into a single regex).
 The regular expressions are matched against part of the log lines. See int)
 with {@code mode = 0} for how regular expressions are matched and replaced.
    
  
  
    
      Identical to the <code>soapBody</code> attribute except that it's used for the output message instead of the input message. For more information see <a href=\"#note1\">note 1</a>
    
  
  
    
      Name of the child element of the SOAP header, or a comma separated list of names to choose from (only one is allowed) (wsdl generator will use the first element) (use empty value to allow an empty soap header, for example to allow element x and an empty soap header use: x,)
    
  
  
    
      Can be used when the SOAP header element exists multiple times
    
  
  
    
      SOAP envelope XSD version to use Default: 1.1
    
    
      
    
  
  
    
      Allow plain XML, without a SOAP Envelope, too. Be aware that setting this true inhibits the capability to test for exit specific response roots in SOAP messages Default: false
    
  
  
    
      Ignore namespaces in the input message which are unknown. If the XSD used has elementFormDefault=unqualified, it is necessary to set this to true. Be aware, however, that
 this will inhibit the validator to detect validation failures of namespaceless subelements of the SoapBody. Default: true when <code>schema</code> or <code>noNamespaceSchemaLocation</code> is used, false otherwise
    
  
  
    
      Pairs of URI references (one for the namespace name, and one for a hint as to the location of a schema document defining names for that namespace name).<br/>
 The syntax is the same as for schemaLocation attributes in instance documents: e.g, "http://www.example.com file%20name.xsd".<br/>
 The user can specify more than one XML Schema in the list.<br/>
 <b>Note</b> that spaces are considered separators for this attributed. This means that, for example, spaces in filenames should be escaped to %20.
    
  
  
    
      A uri reference as a hint as to the location of a schema document with no target namespace.
    
  
  
    
      Name of the response root element, or a comma separated list of element names. The validation fails if the root element is not present in the list. N.B. for WSDL generation only the first element is used
    
  
  
    
      Enable full schema grammar constraint checking, including checking which
 may be time-consuming or memory intensive. Currently, particle unique
 attribution constraint checking and particle derivation restriction
 checking are controlled by this option.
 <p>
 see property
 http://apache.org/xml/features/validation/schema-full-checking
 </p> Default: <code>false</code>
    
  
  
    
      Should the XmlValidator throw a PipeRunexception on a validation error. If not, a forward with name 'failure' must be defined. Default: false
    
  
  
    
      If set: key of session variable to store reasons of mis-validation in Default: failureReason
    
  
  
    
      Like <code>reasonSessionKey</code> but stores reasons in xml format and more extensive Default: xmlFailureReason
    
  
  
    
      If set <code>true</code>, the input is assumed to be the name of the file to be validated. Otherwise the input itself is validated Default: false
    
  
  
    
      If set <code>true</code>, the namespace from schemalocation is added to the schema document as targetnamespace Default: false
    
  
  
    
      Comma separated list of schemaLocations which are excluded from an import or include in the schema document
    
  
  
    
      If set <code>true</code>, the comparison for importedSchemaLocationsToIgnore is done on base filename without any path Default: false
    
  
  
    
      Comma separated list of namespaces which are excluded from an import or include in the schema document
    
  
  
    
      If set <code>true</code>, send warnings to logging and console about syntax problems in the configured schema('s).
 Alternatively, warnings can be switched off using suppression properties XSD_VALIDATION_WARNINGS_SUPPRESS_KEY, XSD_VALIDATION_ERROR_SUPPRESS_KEY and XSD_VALIDATION_FATAL_ERROR_SUPPRESS_KEY Default: true
    
  
  
    
      If set <code>true</code>, the number for caching validators in appConstants is ignored and no caching is done (for this validator only) Default: false
    
  
  
    
      If set to <code>1.0</code>, Xerces's previous XML Schema factory will be used, which would make all XSD 1.1 features illegal. The default behaviour can also be set with <code>xsd.processor.version</code> property. Default: <code>1.1</code>
    
  
  
    
      Key of session variable to store the name of the root element
    
  
  
    
      Key of session variable to store the namespace of the root element
    
  
  
    
      Session key for retrieving a schema
    
  
  
    
      Key of session variable to store number of items processed, i.e. the position or index in the set of items to be processed. When handling the first item, the value will be 1.
    
  
  
    
      The maximum number of items returned. The (default) value of 0 means unlimited, all available items will be returned. Special forward maxItemsReached can be configured to follow Default: 0
    
  
  
    
      Expression evaluated on each result and forwards to [stopConditionMet] forward if configured.
 Iteration stops if condition returns anything other than an empty result. To test for the root element to have an attribute 'finished' with the value 'yes', the expression <code>*[@finished='yes']</code> can be used.
 This can be used if the condition to stop can be derived from the item result. To stop after a maximum number of items has been processed, use <code>maxItems</code>.
 Previous versions documented that <code>position()=2</code> could be used. This is not working as expected; Use maxItems instead
    
  
  
    
      When <code>true</code> ignore any exception thrown by executing sender Default: false
    
  
  
    
      Controls whether all the results of each iteration will be collected in one result message. If set <code>false</code>, only a small summary is returned.
 Setting this attributes to <code>false</code> is often required to enable processing of very large files. N.B. Remember in such a case that setting transactionAttribute to NotSupported might be necessary too Default: true
    
  
  
    
      Postprocess each partial result, to remove the xml-declaration, as this is not allowed inside an xml-document Default: false
    
  
  
    
      When <code>true</code> the input is added to the result in an input element Default: false
    
  
  
    
      When <code>true</code> duplicate input elements are removed, i.e. they are handled only once Default: false
    
  
  
    
      When set <code>true</code>, the calls for all items are done in parallel (a new thread is started for each call). when collectresults set <code>true</code>, this pipe will wait for all calls to finish before results are collected and pipe result is returned Default: false
    
  
  
    
      Maximum number of child threads that may run in parallel simultaneously (combined total of all threads calling this pipe). Use <code>0</code> for unlimited threads Default: 0
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      If defined and empty or false, then this element and all its children are ignored
    
    
      
        
      
    
  
  
    
      
    
  





© 2015 - 2024 Weber Informatics LLC | Privacy Policy