API XL Listener
The API XL Listener executes an API XL document at specific intervals.
1. On the Basic configuration tab, you can specify:
Polling interval: the interval in which to execute the XML file.
Input File: input file, if the transaction contents do not contain the document to evaluate.
Validate XML: if the received or loaded XML document should be validated against its schema.
Cache Schema: if the schema for validation should be cached, so it won’t be re-loaded on every execution.
2. On the Advanced configuration tab, you can specify:
Initialize on trigger only: If enabled, the Listener doesn’t start up until a trigger initializes it.
Allow command-line invocation: If enabled, the listener can be invoked using the CLI client application.
Restart on listening error: If enabled, the listener will be restarted after an error occurs.
FIFO Queue Name: The FIFO field enables a “First In, First Out” queuing mechanism between Listeners and Transports. If a “FIFO Queue Name” is provided, that name will be used as a key for a queue Transactions & will be pushed into before reaching a transport. They’ll be ordered in this queue according to when the Listener created them.
FIFO Queue Delay: It is the interval between updates/checks against that queue. Providing a queue name guarantees that a given Transport sends transactions in the same order the Listener created them in.
Cache type: the type of cache used internally for storing
Timeout: the amount of the time of wait before timing out the HTTP connection. If the value is set with enhanced properties, the units are seconds.
Handle Bad Response: if selected, responses with failure status codes (ie, 404 or 500) will still be returned via the Response section in the XML – rather than failing with an exception. Please note that this means response status values should be checked prior to trying to handle their contents.
Normalize Response Stream: if selected, API XL will automatically normalize the HTTP response body streams to remove bytes with invalid character encodings to avoid errors that can cause. This can add additional processing time, so should only be used if necessary.
JSON Transformer Version: which version of the PilotFish JSON transformer should be used transforming JSON to XML. Highly recommended to use version 2.0 unless 1.0 is needed for backward compatibility for older API XL documents.
3. On the Transaction Logging tab you can enable transaction events logging. That data can be logged by a TransactionEventListener.
The Transaction Logging Enable: This checkbox allows transaction events originating from this listener to be logged by a TransactionEventListener.
Log Transaction Data: If enabled, logs transaction data body.
Log Transaction Data Base64: If enabled, logs transaction data body as Base64.
Log Transaction Attribute: If enabled, logs transaction attributes.
Log All Attributes: If enabled, no attributes will be filtered.
Allowed Attributes: Attributes which are allowed to be logged.
4. On the Inactivity you can specify:
Enable Inactivity Monitor: Check this box to enable inactivity monitoring. This will throw a non-transaction exception if the specified number of transactions haven’t been processed in the specified time interval.
Min. Transactions to Expect: The number of transactions to expect to be completed per monitoring interval.
Monitoring Interval: How often to check the specified number of transactions have been processed.
Times to Monitor: If set, monitoring will be done during the defined times of day. To ignore, set start and end time equally.
Days to Exclude from Monitoring: Inactivity monitoring will not occur on the days specified.
Include Errors in Transaction Count: If checked, transactions that attempted to start but failed at the Listener stage will also be counted.
5. On the Throttling you can specify:
Throttling Mode: The throttling mode to use for limiting the number of transactions or messages emitted by this Listener. “Timed” will limit transactions based on time intervals, while “Concurrent” will limit based on a concurrent number of transactions. “Concurrent” mode requires a Throttling Response Processor step later in your Interface workflow to acknowledge completion.
Throttling Mechanism: The mechanism to use for throttling message. “Blocking” prevents the Listener from continuing to process and emit messages altogether, while “Queued” pushes received messages into the Interface queue (or a default, in-memory queue).
Max Concurrent Messages: How many messages can be concurrently processed, either by time-based limits (“Allow X per Second”) or synchronous (“Allow X at any Time”)
Timed Emission Interval: The interval for time-based limits (“Allow X per X Timed Emission Interval”)
Synchronous Timeout Interval: The interval to wait for a synchronous response before failing.
6. On the Debug configuration tab, you can specify:
Evaluation Logging: if selected, extra information about the evaluation process will be logged to help with debugging its execution. Keep in mind that, in some cases, sensitive information may be logged with this option, so it should be kept off by default.
NOTE: This is separate from the Log elements in the XML structure.
7. If you use proxy – check the Use Proxy on the Proxy tab and specify Proxy Host, Proxy Port, Proxy User and Proxy Password.