Configuring BPC via ibis_config.xml File
In INUBIT, you can configure Business Process CenterBusiness Process Center using the ibis_config.xml file.
Location for the configuration file
The configuration file ibis_config.xml is located in the following directory: <SUITE-INSTALL-DIR>/inubit/server/ibis_root/conf.
Details
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Template of the server configuration (ibis_config.xml).
PURPOSE
This file holds the configuration of the INUBIT Process Engine. On installation it is renamed to
ibis_config.xml and is from then on the working configuration of the server.
Normally the user does not edit the file but the server configuration in the administration of
the INUBIT Workbench; the Process Engine writes the changed values back into this file. Editing
the file directly is therefore only necessary before the first start of the server or when the
Workbench is not available.
The file does not have to contain every property. Every property missing here falls back
to its default value, which is declared in class ServerConfiguration together with all other
server properties. Consequently, this template contains only a part of the server properties.
STRUCTURE
Every <Property> element is one server property:
name Name of the property. It has to match the property name in class ServerConfiguration,
otherwise the Process Engine does not evaluate the entry.
type Property type (see class PropertyFactory). Without the attribute the value is a String.
Boolean, Integer, Long, and Select take the value as element content.
FileSize expects a size with unit, for example, 10MB.
TimePeriod expects seconds.
Password holds a value that the Process Engine stores encrypted.
Map, Loggers, and LoggerRollingFile hold nested Property elements instead of a value.
-->
<Properties version="4.0">
<!-- Switches the server trace on. If it is activated, all system activities of the Process Engine
are logged, which may affect the performance of the system. Activate it selectively and only to
analyze errors.
-->
<Property name="TracingIsActive" type="Boolean">false</Property>
<!-- Deprecated and not used anymore -->
<Property name="DeleteWorkingFiles" type="Boolean">true</Property>
<!-- Suppresses the explicit freeing of memory. With the value false the EDI, flat file, and GDV
parsers additionally trigger the garbage collection themselves while they parse a message; with
true the garbage collection is left completely to the JVM. On a cluster node the value true is
always used.
-->
<Property name="DisableExplicitGC" type="Boolean">true</Property>
<!-- Last user id that the Process Engine has assigned. The server increments the value for every
new user and writes it back into this file; therefore, do not change it manually.
-->
<Property name="UserIdCounter" type="Long">10</Property>
<!-- The last workflow id that the Process Engine has assigned for logging, statistics, and reports.
Like the user id counter, it is maintained by the server itself.
-->
<Property name="WorkflowIdCounter" type="Long">0</Property>
<!-- Deprecated and not used anymore -->
<Property name="IsStandaloneServer" type="Boolean">true</Property>
<!-- Deprecated and not used anymore -->
<Property name="RemoveDTDS" type="Boolean">true</Property>
<!-- If this option is activated, copies of the input and output messages of workflow processes are
saved in the server log section of the workflow.
-->
<Property name="InOutMessageLoggingIsActive" type="Boolean">false</Property>
<!-- Number of input and output messages that are saved per user. The messages are written into the
directory of the respective user. If the number is exceeded, the messages that were saved first
are removed (queue principle, first in - first out).
-->
<Property name="MaxNumberInOutMessages" type="Integer">0</Property>
<!-- Number of files for temporarily saved messages of workflow executions in test or watch mode,
per workflow thread. Any further files are deleted on the next technical workflow test run.
-->
<Property name="MaxNumberTmpMessages" type="Integer">500</Property>
<!-- Number of EDI rule files that the EDI handler keeps in its cache. When the limit is reached,
the handler drops one cached rule and stores the new rule in its place (see class EDIHandler).
-->
<Property name="EDIRuleCacheLimit" type="Integer">10</Property>
<!-- Maximum number of workflow threads that the Process Engine executes in parallel. -->
<Property name="SchedulerThreadsCount" type="Integer">10</Property>
<!-- Priority of the threads in which the workflows are processed.
Allowed values are 1 (minimum) to 10 (maximum), 5 is the normal priority.
-->
<Property name="SchedulerThreadPriority" type="Select">5</Property>
<!-- Priority of the threads that are responsible for the communication between the INUBIT Workbench
and the INUBIT Process Engine. Allowed values are 1 (minimum) to 10 (maximum).
-->
<Property name="GUIThreadPriority" type="Select">10</Property>
<!-- Deprecated and not used anymore.
The size of the trace log is configured over TracingMaxFileSize instead.
-->
<Property name="SystemLogFileSize" type="FileSize">10MB</Property>
<!-- Deprecated and not used anymore.
The number of trace log archives is configured over TracingMaxBackupIndex instead.
-->
<Property name="SystemLogFileBackupIndex" type="Integer">100</Property>
<!-- Maximum size of the audit log file. If the given size is reached, the current file audit.log is
closed and archived with a running number, for example, audit.log.5.
-->
<Property name="AuditLogFileSize" type="FileSize">10MB</Property>
<!-- Maximum number of archive files that are kept for the audit log (audit.log). -->
<Property name="AuditLogFileBackupIndex" type="Integer">100</Property>
<!-- Deprecated and not used anymore -->
<Property name="WorkflowLogFileSize" type="FileSize">10MB</Property>
<!-- Deprecated and not used anymore -->
<Property name="WorkflowLogFileBackupIndex" type="Integer">100</Property>
<!-- Deprecated and not used anymore -->
<Property name="Appliance" type="Boolean">false</Property>
<!-- Deprecated and not used anymore -->
<Property name="ApplianceGetIPCmd">/usr/local/is-setup/is-get-IP</Property>
<!-- Deprecated and not used anymore -->
<Property name="ApplianceSetIPCmd">/usr/local/is-setup/is-set-IP</Property>
<!-- Deprecated and not used anymore -->
<Property name="ApplianceShutdownCmd">/usr/local/is-setup/is-shutdown</Property>
<!-- Deprecated and not used anymore -->
<Property name="ApplianceRebootCmd">/usr/local/is-setup/is-reboot</Property>
<!-- Enables writing statistic data about the system into the database of the INUBIT Process Engine.
The data are shown in the Reporting register of the Workbench.
-->
<Property name="SystemStatisticLoggingIsActive" type="Boolean">true</Property>
<!-- Interval in seconds in which the statistic data are collected. Do not fall below the default
value of 300 seconds (5 minutes) to avoid performance problems.
-->
<Property name="SystemStatisticLoggingInterval" type="TimePeriod">300</Property>
<!-- Maximum number of login retries. Afterwards the user is locked for security reasons. -->
<Property name="UserFailedLoginLimit" type="Integer">10</Property>
<!-- Activates the check of a new or of a password that has to be changed against the regular
expression in UserPasswordLimitPattern.
-->
<Property name="UserPasswordLimit" type="Boolean">false</Property>
<!-- Regular expression that defines the criteria for new passwords, for example, their minimum
length or the allowed characters. The pattern delivered here demands 8 to 255
characters out of at least three of the four-group digit, uppercase letter, lowercase letter,
and special character. It is only evaluated if UserPasswordLimit is activated.
-->
<Property name="UserPasswordLimitPattern">
/(?=^.{8,255}$)((?=.*\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[^A-Za-z0-9])(?=.*[a-z])|(?=.*[^A-Za-z0-9])(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9]))^.*/
</Property>
<!-- Inverts the meaning of UserPasswordLimitPattern.
false: only the passwords that match the pattern are accepted, all others are rejected.
true: only the passwords that do not match the pattern are accepted.
-->
<Property name="UserPasswordLimitNegative" type="Boolean">false</Property>
<!-- Restricts the access to properties of the type Password so that their plain text cannot be read
out over a workflow. With the value true a password may not be assigned to a property of
another type in the assignments, and modules like Exception or the XML converter refuse to
output a password value.
-->
<Property name="RestrictedPasswordPropertyAccess" type="Boolean">true</Property>
<!-- SMTP server over which the Process Engine sends its error notification mails.
The current Process Engine reads these settings from the child properties with the prefix
Error, for example, ErrorActive, ErrorHost, and ErrorPort (see the method
getSMTPPropertiesMapDefault of class ServerConfiguration). The child properties without
a prefix below originate from earlier versions and are kept because existing installations
contain them.
-->
<Property name="SMTPProperties" type="Map">
<!-- Switches the sending of the notification mails on. -->
<Property name="Active" type="Boolean">false</Property>
<!-- Host name or IP address of the SMTP server. -->
<Property name="Host">0.0.0.0</Property>
<!-- Port of the SMTP server. -->
<Property name="Port" type="Integer">25</Property>
<!-- Switches the authentication at the SMTP server on. Only then User and Password are used. -->
<Property name="Auth" type="Boolean">false</Property>
<!-- Login name for the SMTP server. -->
<Property name="User"></Property>
<!-- Password for the SMTP server. The Process Engine stores the value encrypted. -->
<Property name="Password" type="Password"></Property>
<!-- Timeout in seconds for the connection to the SMTP server. -->
<Property name="Timeout" type="TimePeriod">30</Property>
<!-- Switches the debug output of the mail session on, which logs the SMTP dialog. -->
<Property name="Debug" type="Boolean">false</Property>
</Property>
<!-- Configuration of the watchdog. The watchdog is an own Java process (class ISServerWatchDog)
that the Process Engine starts and that monitors the server over XML-RPC.
-->
<Property name="WatchDogProperties" type="Map">
<!-- Interval in milliseconds in which the watchdog checks the Process Engine.
A value of 0 or less switches the watchdog off, therefore it is not started by default.
-->
<Property name="PingTime">-1</Property>
<!-- Port on which the watchdog offers its XML-RPC interface.
The Process Engine also uses it to stop an already running watchdog.
-->
<Property name="Port">8686</Property>
<!-- Log level of the watchdog process. -->
<Property name="DebugLevel">debug</Property>
<!-- Log file of the watchdog. The Process Engine replaces ${ibis.root.directory} by the INUBIT
root directory.
-->
<Property name="LogFileName">${ibis.root.directory}/log/watchDog.log</Property>
</Property>
<!-- Attributes of a user in the user administration. The names of the child properties are the
fields that the Workbench offers in the user dialog, their values are the default values that
are preset for a new user. Every entry that is not one of the standard attributes of a user is
offered as an additional input field and stored at the user as an own attribute.
-->
<Property name="UserAttributes" type="Map">
<!-- Login name of the user. -->
<Property name="UserName"></Property>
<!-- Password of the user. -->
<Property name="Password"></Property>
<!-- Mail address of the user, to which the Process Engine sends notifications. -->
<Property name="Email"></Property>
<!-- Last name of the user. -->
<Property name="LastName"></Property>
<!-- First name of the user. -->
<Property name="FirstName"></Property>
<!-- User group into which a new user is put. -->
<Property name="UserGroup">admin</Property>
<!-- Role of the user, which determines the functions that are available in the Workbench. -->
<Property name="Role">Advanced User</Property>
<!-- Process role of the user, over which tasks in workflows are assigned. -->
<Property name="ProcessRole"></Property>
<!-- Telephone number of the user. -->
<Property name="Telefon"></Property>
<!-- Fax number of the user. -->
<Property name="Fax"></Property>
<!-- Free comment about the user. -->
<Property name="Comment"></Property>
<!-- Id of the user. The Process Engine assigns it from the counter UserIdCounter. -->
<Property name="UserId"></Property>
</Property>
<!-- Attributes of a user group in the user administration, analogous to UserAttributes. -->
<Property name="GroupAttributes" type="Map">
<!-- Name of the group. -->
<Property name="UserName"></Property>
<!-- Parent group of the group. -->
<Property name="UserGroup"></Property>
<!-- Free comment about the group. -->
<Property name="Comment"></Property>
</Property>
<!-- Additional loggers for selected Java packages and classes, independently of the server trace.
The name of a child property has to be the full name of the package or of the class that is to
be logged. A child of the type LoggerRollingFile writes into a file rolled over by
size; its Attributes element carries the configuration: "file" is the log file, in which
$ibis.root.directory$ is replaced by the INUBIT root directory, layout is the log4j pattern of
a log line, maxFileSize is the size in MB at which the file is rolled over, maxBackupIndex is
the number of archive files that are kept, and level is the log level.
-->
<Property name="TracingCustom" type="Loggers">
<!-- Logs the SQL and session output of Hibernate, which the Process Engine uses for the
database access. The level ERROR keeps the file small; raise it only to analyze errors.
-->
<Property name="org.hibernate" type="LoggerRollingFile">
<Attributes file="$ibis.root.directory$/log/hibernate.log"
layout="%5.5p %d{dd.MM.yy HH:mm:ss,SSS} [%-10t] %-25c{1} %m%n" maxBackupIndex="3"
maxFileSize="8" level="ERROR"/>
</Property>
<!-- Logs the cluster manager, which coordinates the nodes of a cluster. -->
<Property name="de.virtimo.inubit.clustermanager" type="LoggerRollingFile">
<Attributes file="$ibis.root.directory$/log/clustermanager.log"
layout="%5.5p %d{dd.MM.yy HH:mm:ss,SSS} [%-10t] %-25c{1} %m%n" maxBackupIndex="3"
maxFileSize="8" level="INFO"/>
</Property>
</Property>
<!-- Additional Java system properties. The Process Engine sets every child property with
System.setProperty, both on startup and when the map is changed in the Workbench. Therefore,
properties of third-party libraries can be configured here without changing the start script.
-->
<Property name="SystemProperties" type="Map">
<!-- Timeout for outgoing connections of the J-Integra COM bridge. -->
<Property name="JINTEGRA_OUTGOING_CONNECTION_TIMEOUT">36000000</Property>
<!-- If true, the JAX-WS client writes the sent and received SOAP messages into the log. -->
<Property name="com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump">false
</Property>
<!-- If true, the JAX-WS server side writes the received SOAP requests into the log. -->
<Property name="com.sun.xml.ws.transport.http.HttpAdapter.dump">false</Property>
<!-- Time in seconds for which the JVM caches successful DNS lookups. -->
<Property name="networkaddress.cache.ttl">3600</Property>
<!-- Switches off the DFS support of the jCIFS client, over which the VFS Connector accesses
CIFS/SMB shares.
-->
<Property name="jcifs.smb.client.dfs.disabled">true</Property>
<!-- Order in which the jCIFS client resolves host names. -->
<Property name="jcifs.resolveOrder">DNS</Property>
</Property>
</Properties>
Configuring Business Process Center as Process User Server
The following connection properties can be configured in the ibis_config.xml file:
| Property | Description |
|---|---|
|
Type of the process user (e.g. |
|
URL of the Business Process Center. |
|
API key created in BPC. Refer to API Keys |
Configuring Business Process Center as Portal Server
The following connection properties can be configured in the ibis_config.xml file:
| Property | Description |
|---|---|
|
Type of the process user (e.g. |
|
URL of the Process Engine. |
|
URL of Business Process Center. |
|
Login parameters for authentication at the process user server. |
|
API key created in BPC. Refer to API Keys |
|
Backend Connection keys created in BPC (e.g. |
|
Identity provider that should be used in the Business Process Center for user authorization. e.g.:
|
|
Access password of portal server. |