Configuration | ||
---|---|---|
Previous | Next | |
Quick installation and upgrade overview | Database repository |
This part of the book contains information on installation configurations that may be relevant.
Configuration of an iKnowBase installation is done through setting named configuration properties to specific values. Changes to configuration objects are static, and will require a restart of the application server.
There are many sources of configuration property values, and the exact sources that are used in a particular installation can only be seen on the ikb$console-page shown below. However, this list shows the overall structure.
hostname=iknowbase.example.com
.
user.dir=/home/iknowbase/prod
hostname=iknowbase.example.com
servletContext=/ikbViewer
*
(default value)
Thus, there are plenty of options for configuring the instance. Often, the database table is most convenient, but you may also choose to use any of the available property source. Either way, you can and should verify that the correct values are set, using /ikb$console.
This section describes the main configuration objects for the ikbViewer application.
The Content Server is the unit responsible for serving file content, such as word documents or PDFs.
Property name | Description |
---|---|
com.iknowbase.contentServer.defaultContentDisposition | Set to “inline” to have the browser try to open documents in-line, or to start Office for viewing. Set to “attachment” to have “save as” as the default browser behaviour. |
com.iknowbase.contentServer.createResponseHeaders | Toggles whether to include HTML-headers for document information. Normally left unchanged. |
The Page Engine is the unit responsible for composing portlets and data, and rendering information to web clients.
Property name | Description |
---|---|
com.iknowbase.pageEngine.contentCacheEnabled | Toggles whether content caching is used at all. The legal values are either “true” or “false”. |
The Search Client, using SOLR, handles connections to a SOLR search server. “searchEngineName” refers to the logical name given to the Solr Configuration.
Property name | Description |
---|---|
com.iknowbase.searchEngine.
<searchEngineName> .search.URL
|
URL to index server, e.g.
http://solr.example.com/solr .
|
com.iknowbase.searchEngine.
<searchEngineName> .search.connectionTimeoutMillis
|
Max number of milliseconds to wait for the connection. |
com.iknowbase.searchEngine.
<searchEngineName> .search.operationTimeoutMillis
|
Max number of milliseconds to wait for the operation. |
The iKnowBase system provides a content cache, based on Ehcache ( http://www.ehcache.org). While Ehcache is used for many caching needs internally in iKnowBase, the content cache is special in that it is in fact a replicated cache: Values stored in the content cache is replicated to all other nodes in a cluster. For more information on Ehcache replication and the meaning of the configuration variables, see http://ehcache.org/documentation/distributed_caching_with_rmi.html.
Property name | Description |
---|---|
com.iknowbase.cache.EHCache.peerDiscovery | Sets the properties used by Ehcache to discover other nodes. |
com.iknowbase.cache.EHCache.listenerProperties | Sets the properties used by Ehcache node for cache replication. |
iKnowBase needs to generate a secure token for login information in the following scenarios:
This token is generated using the HMAC_SHA1 message authentication algorithm, based on a secret key along with user and time information.
By default, a suitable key is automatically generated when the application server starts up. However, for load balanced scenarios with multiple application servers, this would result in different keys and spurious failures during data load. You may then manually specifiy a secret key in the configuration. Please use a long phrase with multiple words, numbers and special characters.
Property name | Description |
---|---|
com.iknowbase.secureTokenEngine.secureKey | Key value used for generating tokens, when required. |
iKnowBase comes with an embedded process engine based on the Activity BPM Platform. This engine must be explicitly enabled if you want to use it.
Property name | Description |
---|---|
com.iknowbase.process.activiti.enabled | Toggles whether the activiti engine is enabled |
com.iknowbase.process.activiti.jobExecutorEnabled | Toggles whether the activiti engine will pick up jobs from the database, or only respond to online requests |
com.iknowbase.process.activiti.processEngineName | Sets the name of the process engine. Should normally not be changed. |
com.iknowbase.process.activiti.mailServerDefaultFrom | Sets default “from” address for email sent from activiti. |
com.iknowbase.process.activiti.mailServerHost | Hostname for smtp server used when sending email. |
com.iknowbase.process.activiti.mailServerPort | Port number for smtp server. |
com.iknowbase.process.activiti.mailServerUsername | Username used for logging in to email server when sending email. |
com.iknowbase.process.activiti.mailServerPassword | Password used for logging in to email server when sending email. |
When iKnowBase Process Services is installed, the ikbViewer runtime application(s) will need to know how to connect to the iKnowBase Process Services engine (ikbProcessServices), and how to log on to the underlying Oracle BPEL engine.
Property name | Description |
---|---|
com.iknowbase.ProcessServices.WorkflowService.initialContextFactory | Name of the java-class to use for the InitialContextFactory when connecting to the Process Services Server |
com.iknowbase.ProcessServices.WorkflowService.providerURL | URL used to connect to the Process Services Server |
com.iknowbase.ProcessServices.WorkflowService.securityPrincipal | Username used for connecting to the Process Services server. This username is used by the application server itself, and is often not a real user. |
com.iknowbase.ProcessServices.WorkflowService.securityCredentials | Password for the given user |
com.iknowbase.ProcessServices.BPELWorkflowService.domain | The domain id for the BPEL-domain. The default value of “domain” is often correct. |
com.iknowbase.ProcessServices.BPELWorkflowService.securityRealm | The realm used by Process Services when connecting on to the BPEL server. |
com.iknowbase.ProcessServices.BPELWorkflowService.securityPrincipal | The username used by Process Services when connecting to the BPEL-server |
com.iknowbase.ProcessServices.BPELWorkflowService.securityCredentials | The password used by Process Services when connecting to the BPEL-server. |
The values for WorkflowService.initialContextFactory and WorkflowService.providerURL vary between application servers. Typical values are as follows:
Application server | Property | Format of typical value |
---|---|---|
Oracle WebLogic Server | WorkflowService.initialContextFactory | weblogic.jndi.WLInitialContextFactory |
WorkflowService.providerURL | t3://localhost:8001 |
This section describes the main configuration objects for the ikbBatch application.
The ikbBatch application contains a file converter server, which can be configured to listen for file conversion requests. In order to work, you must install Oracle Outside In on the server, and then set the outside in location as a configuration property.
Property name | Description |
---|---|
com.iknowbase.batch.fileConverter.enabled | Toggles whether to start the fileConverter. The legal values are either “true” or “false”. |
com.iknowbase.batch.fileConverter.dequeTimeoutSeconds | Number of seconds each dequeue() shall wait before recycyling. |
com.iknowbase.batch.fileConverter.spawnPolicy | Decides when the fileConverter starts listening for a new message. Use “immediate” for parallel processing, or “delayed” for serial processing. |
com.iknowbase.batch.fileConverter.outsideInDirectory | Location of outside in installation. File Converter is disabled when this is not set. |
com.iknowbase.batch.fileConverter.replyMessageExpirationSeconds | Number of seconds each reply message shall be valid, before expiring. |
The ikbBatch application contains a page engine server, which can be configured to listen for page rendering requests.
Property name | Description |
---|---|
com.iknowbase.batch.pageEngine.enabled | Toggles whether to start the fileConverter. The legal values are either “true” or “false”. |
com.iknowbase.batch.pageEngine.dequeTimeoutSeconds | Number of seconds each dequeue() shall wait before recycyling. |
com.iknowbase.batch.pageEngine.spawnPolicy | Decides when the pageEngine starts listening for a new message. Use “immediate” for parallel processing, or “delayed” for serial processing. |
com.iknowbase.batch.pageEngine.replyMessageExpirationSeconds | Number of seconds each reply message shall be valid, before expiring. |
The ikbBatch application contains a content indexer server, which listens for indexing requests and forwards them to the appropriate search engine for actual indexing. “searchEngineName” refers to the logical name given to the Solr Configuration.
Property name | Description |
---|---|
com.iknowbase.batch.contentIndexer.enabled | Toggles whether to start the contentIndexer. The legal values are either “true” or “false”. |
com.iknowbase.batch.contentIndexer.dequeTimeoutSeconds | Number of seconds each dequeue() shall wait before recycyling. |
com.iknowbase.batch.contentIndexer.spawnPolicy | Decides when the pageEngine starts listening for a new message. Use “immediate” for parallel processing, or “delayed” for serial processing. |
com.iknowbase.searchEngine.
<searchEngineName> .index.type
|
Type of index server. Currently “SOLR” is the only supported value. |
com.iknowbase.searchEngine.
<searchEngineName> .index.URL
|
URL to index server, e.g.
http://solr.example.com/solr/CoreName .
|
com.iknowbase.searchEngine.
<searchEngineName> .index.connectionTimeoutMillis
|
Max number of milliseconds to wait for the connection. |
com.iknowbase.searchEngine.
<searchEngineName> .index.operationTimeoutMillis
|
Max number of milliseconds to wait for the operation. |
com.iknowbase.searchEngine.
<searchEngineName> .index.commitWithinSeconds
|
Max number of seconds before the index server commits an update to the search index. |
The ikbBatch application contains an email reader client, which can load email from external mail servers. This can be enabled or disabled through configuration.
Property name | Description |
---|---|
com.iknowbase.batch.emailReader.enabled | Toggles whether the emailReader is enabled or not. |
There are no configuration items specific to the ikbStudio application.
This section describes the main configuration objects for the ikbWebdav application.
The ikbWebdav application contains an embedded FTP-server that lets you use FTP against all documents exposed through the Webdav protocol. This is enabled by setting the following properties:
Property name | Description |
---|---|
com.iknowbase.webdav.ftp.listenPort | Port number to listen for FTP-requests on. |
This section describes the main configuration objects for the ikbWebServices application.
Property name | Description |
---|---|
com.iknowbase.ws.mtomEnabled | Toggles whether MTOM is enabled for the SOAP endpoints. |
Property name | Description |
---|---|
com.iknowbase.ws.security.requireAuthentication | Toggles whether WS-SECURITY based authentication is required to connect to the SOAP server. |
com.iknowbase.ws.security.loginModuleName | Name of login module to handle login requests. Use default value. |
com.iknowbase.ws.security.trustedPrincipal | Name of trusted principal (user or group) if only some users are to be given access |
This section describes the main configuration objects for the ikbInstant application.
The Instant Server is the contact point for Web Clients as well as managing all topics, clients, users and message delivery.
Property name | Description |
---|---|
com.iknowbase.instant.suspendTimeoutLP | How long in miliseconds a Long Polling connection is suspended before the server resumes the connection. This will trigger a reconnect by the client. |
com.iknowbase.instant.enableCORSFilter | Server side support for Cross Origin Resource Sharing (CORS). The legal values are either “true” or “false”. |
com.iknowbase.instant.disconnectCleanupInterval | How often the disconnect cleanup maintenance thread looks for disconnected clients. |
com.iknowbase.instant.disconnectCleanupInactivityThreshold | How long a connection needs to be in disconnect inactivity queue before it is examined and validated. |
Note: Make sure you also configure SecureTokenEngine to enable authentication for web clients
The Instant Queue Server is the unit responsible for consuming messages published using Instant’s PL/SQL API and delivering them to the specified topic where all web clients are connected.
Property name | Description |
---|---|
com.iknowbase.instant.aq.enabled | Toggles whether AQ messages is processed by this instance at all. The legal values are either “true” or “false”. |
com.iknowbase.instant.aq.dequeTimeoutSeconds | Number of seconds each dequeue() shall wait before recycyling. |
com.iknowbase.instant.aq.spawnPolicy | Decides when the AQ server starts listening for a new message. Use “immediate” for parallel processing, or “delayed” for serial processing. |
This is a sample script, showing how to set installation properties:
truncate table ikb_installation_properties;
insert into ikb_installation_properties (property_name, property_value)
select 'com.iknowbase.page.PageEngine.isContentCacheEnabled', 'true' from dual UNION
select 'com.iknowbase.ProcessServices.WorkflowService.InitialContextFactory', 'weblogic.jndi.WLInitialContextFactory' from dual UNION
select 'com.iknowbase.ProcessServices.WorkflowService.ProviderURL', 'opmn:ormi://localhost:6003:home/ikbProcessServices' from dual UNION
select 'com.iknowbase.ProcessServices.WorkflowService.SecurityPrincipal', 'orcladmin' from dual UNION
select 'com.iknowbase.ProcessServices.WorkflowService.SecurityCredentials', 'mypassword' from dual;
Previous | Top | Next |
Quick installation and upgrade overview | Database repository |