OBE_HOME
- this is the location where the binary
distribution is installed, or the $OBE_DEV_HOME/build/staging
location as created by the build system.
Configure the application server to ensure that the resources required by OBE will be available. The J2EE resources required include:
org/obe/jdbc/DataSource
.
org/obe/jms/AsyncRequestQueue
and
org/obe/jms/ApplicationEventQueue
.org/obe/mail/MailSession
.
other
.OBE provides some preconfigured resources for use with JBoss,
under $OBE_HOME/j2ee/jboss
. The conf
and deploy
directories can be copied to the
${as.dir}/server/default
directory - you will need to rename/edit the *-ds.xml
data
source definition file in the conf
directory to suit your database type and connection properties.
The 'default' JBoss server configuration should be adequate for
most purposes. Do not try to use the 'minimal' server configuration
- it is not J2EE compliant and does not provide all the J2EE container
functionality required by
OBE.
Install the JDBC driver for your database by copying the appropriate JAR files into the
${as.dir}/server/default/lib
directory.
Note that OBE provides a modified version of the Castor XML
library that fixes certain critical bugs, so it is necessary either to delete the one that
comes with JBoss-3.2.x in
${jboss.home}/server/default/deploy/snmp-adaptor.sar
,
or to replace
it with the OBE version (castor-0.9.9-xml-patched.jar
)
if you wish to use the JBoss SNMP adaptor. This incompatibility is a
consequence of the JBoss UnifiedClassLoader3 merging the classpaths of
the
various J2EE applications.
OBE provides some sample configuration files for WebLogic Server under
the $OBE_HOME/j2ee/wls*
directories.
To configure the database, perform the following steps using settings to match your custom build properties:
OBE_HOME
directory.bin\createdb
bin/createdb
createdb
script directly from
your native OS graphical explorer shell (Windows Explorer, Nautilus,
etc.)obeconfig.jar
on
the classpath ($OBE_HOME/lib/config.jar
by default or inside $OBE_HOME/j2ee/lib/obeserver.ear
) or they can
reside in a directory on the hard disk, or both. Loose files and settings from
the configuration directory
override their counterparts in the jar. In a configuration jar the
files are located in the META-INF/services
directory as recommended by the Sun JAR Specification. On disk the
default location for configuration files is the current directory but
this is typically overridden by setting the system property
obe.config.dir
.
jar:obeconfig.jar!META-INF/services/
obe.properties
. It
contains a number of important settings, which can be overridden by any of the
following techniques:-D<property-name>=<property-value>
as a JVM argument on startup).obeconfig.jar
.
obe.properties
: just supply values for the ones you need to override.
Property | Type | Default / Allowable Value(s) | Meaning |
---|---|---|---|
Properties accessed via CommonConfig | |||
obe.client.credentials | string | password | The credentials to supply when connecting to the server. |
obe.client.principal | string | system | The principal to supply when the connecting to the server. |
obe.client.protocol | string | local | j2ee-local | rmi | xmlrpc | The protocol to use when connecting to the server. |
obe.xpdl.date.format | string | yyyy-MM-dd'T'HH:mm:ssZ | The default date format. |
obe.xpdl.duration.unit | string | D (day) | The default duration unit. |
Properties accessed through ClientConfig | |||
obe.client.java.naming.factory.initial | string | Overrides the default JNDI initial context factory specified by ${java.naming.factory.initial}. | |
obe.client.jaas.callback.handler | string | org.obe.client.api.base. OBECallbackHandler |
The name of the JAAS callback handler class to instantiate for login. |
obe.client.jaas.config | string | other | The name of the JAAS login configuration entry to use. |
obe.client.stdio | boolean | false | Whether to use standard I/O for tool agent interactions with the user. |
obe.jaas.caller.principal.class | string | The name of the java.security.Principal class which
indicates the primary
authenticated identity. |
|
obe.jms.queue.connection.factory | string | ConnectionFactory | The JNDI name of the javax.jms.QueueConnectionFactory to
use (JMS client only). |
obe.jms.topic.connection.factory | string | ConnectionFactory | The JNDI name of the javax.jms.TopicConnectionFactory to
use (JMS client only). |
obe.server.host | URL | jnp://localhost:1099 | The URL of the server. |
Properties
accessed through ServerConfig
|
|||
obe.audit.nontransactional | boolean | false | Whether to log audit records non-transactionally. |
obe.domain | string | OBE | The value of the 'domain' property in audit records. |
obe.node | string | dns-host-name | The value of the 'node' property in audit records. |
obe.mail.session | string | The JNDI name of the mail session to use. | |
obe.reuse.workitems | boolean | true | Whether to re-use existing work items for cyclic workflows. |
obe.script | string | text/x-xpath | The default scripting language to use when evaluating expressions. |
obe.events.use.api | boolean | false | Whether to route inbound events through the local client API. |
obe.events.key.based.subscriptions | boolean | true | Whether to support key-based event subscriptions. |
obe.events.max.tardiness | int | 300000 | Maximum acceptable delay for timed events. |
obe.init.use.servlet | boolean | false | Whether to use the OBE initialization servlet (J2EE deployments only). |
obe.debug.verbose | boolean | false | Enables extremely verbose debug output. |
obe.async.threadpool.size | int | 20 | The size of the thread pool used to service async execution requests (BasicAsyncManager only). |
obe.directory.poll.interval | int | 5000 | The polling interval for the ${obe.config.dir}/processes
directory. |
Properties required by JavaMail | |||
mail.debug | boolean | false | The initial debug mode. |
mail.from | string | obe@localhost | The return email address for emails sent by OBE. |
mail.mime.address.strict | boolean | true | Whether to perform strict MIME header parsing. |
mail.host | string | localhost | The default host name of the mail server for both Stores and Transports. |
mail.store.protocol | string | pop3 | Specifies the default message access protocol. |
mail.transport.protocol | string | smtp | Specifies the default mail transport protocol. |
mail.user | string | obe | The default user name to use when connecting to the mail server. |
mail.protocol.class | string | Specifies the fully qualified class name of the provider for the specified protocol. | |
mail.protocol.host | string | ${mail.host} |
The host name of the mail server for the specified protocol. |
mail.protocol.port | int | The port number of the mail server for the specified protocol. | |
mail.protocol.user | string | ${mail.user} |
The user name to use when connecting to mail servers using the specified protocol. |
jar:$OBE_HOME/lib/obeconfig.jar!META-INF/services/obe.properties
are
as follows:Property | Default Implementation | Service |
---|---|---|
obe.applicationEventBroker | org.obe.event.BasicApplicationEventBroker | Application Event Broker |
obe.asyncManager | org.obe.engine.async.BasicAsyncManager | Async Execution Manager |
obe.assignmentStrategyFactory | org.obe.runtime.strategy.BasicAssignmentStrategyFactory | Assignment Strategy Factory |
obe.calendarFactory | org.obe.engine.calendar.BasicCalendarFactory | Calendar Factory |
obe.completionStrategyFactory | org.obe.runtime.strategy.BasicCompletionStrategyFactory | Completion Strategy Factory |
obe.dataConverter | org.obe.engine.util.BasicDataConverter | Data Converter |
obe.evaluatorFactory | org.obe.runtime.evaluator.BasicEvaluatorFactory | Evaluator Factory |
obe.functionFactory | org.obe.runtime.evaluator.BasicFunctionFactory | Function Factory |
obe.instanceRepository | org.obe.engine.persistence.memory.BasicInstanceRepository | Instance Repository |
obe.realm | org.obe.runtime.participant.BasicRealm | Security Realm |
obe.parserFactory | org.obe.spi.service.XPDLParserFactory | XPDL Parser Factory |
obe.toolAgentFactory | org.obe.runtime.tool.BasicToolFactory | Tool Agent Factory |
obe.processRepository | org.obe.engine.persistence.memory.BasicProcessRepository | Process Repository |
obe.workflowEventBroker | org.obe.event.BasicWorkflowEventBroker | Workflow Event Broker |
obe.resourceRepository | org.obe.engine.repository.BasicXMLRepository | Resource Repository |
obeconfig.jar
packaged inside
$OBE_HOME/j2ee/lib/obeserver.ear
are as follows:Property | J2EE implementation | Service |
---|---|---|
obe.applicationEventBroker | org.obe.server.j2ee.service.EJBApplicationEventBroker | Application Event Broker |
obe.asyncManager | org.obe.server.j2ee.service.JMSAsyncManager | Async Manager |
obe.instanceRepository | org.obe.server.j2ee.repository.EJBInstanceRepository | Instance Repository |
obe.processRepository | org.obe.server.j2ee.repository.EJBProcessRepository | Process Repository |
obe.resourceRepository | org.obe.server.j2ee.repository.WebDAVResourceRepository | Resource Repository |
castor-map.xml
file defines the mapping between the XML elements and attributes and
the corresponding JavaBean properties. It should not normally be
necessary to edit this file unless you are extending OBE by adding new tool
agent types, for example.
jar:obeconfig.jar!META-INF/services/