Application configuration

From OpenKM Documentation
Revision as of 14:08, 1 February 2011 by Pavila (talk | contribs) (Force keywords lowercase conversion)

Jump to: navigation, search

OpenKM configuration file

OpenKM.cfg file is the main OpenKM configuration file. You can find this file in your server in $JBOSS_HOME/OpenKM.cfg.


Nota clasica.png Each time you make some change in the OpenKM.cfg file JBoss server must be restarted to take effect. Staring with OpenKM 5.1 these configuration properties will be located at database and will ease its management.

Changing uploading max file size

The default limit is 25MB. If you want to increase to 50MB:

file.size=50.

Changing repository.xml configuration filename and path

repository.config=repository.xml

Changing default repository home

By default repository is stored in $JBOSS_HOME/repository folder but you can change it with:

repository.home=repotest

Changing default connection role

By default connection role to OpenKM is called UserRole, you can change to other role name. This change need some changes too in web.xml file into OpenKM.war/WEB-INF

default.user.role=OtherRole
<security-constraint>
    <web-resource-collection>
      <web-resource-name>OpenKM Protected Area</web-resource-name>
      <!-- GWT -->
      <url-pattern>/es.git.openkm.frontend.Main/*</url-pattern>
      <url-pattern>/es.git.openkm.backend.Main/*</url-pattern>
      <!-- JSPs -->
      <url-pattern>/admin/*</url-pattern>
      <url-pattern>/mobi/*</url-pattern>
      <!-- Servlets -->
      <url-pattern>/RepositoryStartupServlet</url-pattern>
      <url-pattern>/Test</url-pattern>
      <url-pattern>/OKM*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>AdminRole</role-name>
      <role-name>OtherRole</role-name>
    </auth-constraint>
    <user-data-constraint>
      <transport-guarantee>NONE</transport-guarantee>
    </user-data-constraint>
  </security-constraint>
  <login-config>
    <auth-method>FORM</auth-method>
    <realm-name>OpenKM</realm-name>
    <form-login-config>
      <form-login-page>/login.jsp</form-login-page>
      <form-error-page>/login.jsp?error=1</form-error-page>
    </form-login-config>
  </login-config>
  <security-role>
    <description>Admin user access</description>
    <role-name>AdminRole</role-name>
  </security-role>
  <security-role>
    <description>General user access</description>
    <role-name>OtherRole</role-name>
  </security-role>

Changing default admin role

By default connection role to OpenKM is called AdminRole, you can change to other role name. This change need some changes too in web.xml file into OpenKM.war/WEB-INF

default.admin.role=OtherAdminRole
<security-constraint>
    <web-resource-collection>
      <web-resource-name>OpenKM Protected Area</web-resource-name>
      <!-- GWT -->
      <url-pattern>/es.git.openkm.frontend.Main/*</url-pattern>
      <url-pattern>/es.git.openkm.backend.Main/*</url-pattern>
      <!-- JSPs -->
      <url-pattern>/admin/*</url-pattern>
      <url-pattern>/mobi/*</url-pattern>
      <!-- Servlets -->
      <url-pattern>/RepositoryStartupServlet</url-pattern>
      <url-pattern>/Test</url-pattern>
      <url-pattern>/OKM*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>OtherAdminRole</role-name>
      <role-name>UserRole</role-name>
    </auth-constraint>
    <user-data-constraint>
      <transport-guarantee>NONE</transport-guarantee>
    </user-data-constraint>
  </security-constraint>
  <login-config>
    <auth-method>FORM</auth-method>
    <realm-name>OpenKM</realm-name>
    <form-login-config>
      <form-login-page>/login.jsp</form-login-page>
      <form-error-page>/login.jsp?error=1</form-error-page>
    </form-login-config>
  </login-config>
  <security-role>
    <description>Admin user access</description>
    <role-name>OtherAdminRole</role-name>
  </security-role>
  <security-role>
    <description>General user access</description>
    <role-name>UserRole</role-name>
  </security-role>

Change max results in UI

This option limits the search results in UI.

max.search.results=25

Since: OpenKM 4.0

Change principal adapter

OpenKM can handle user access using the JBoss DatabasePrincipalAdapter login module by default. OpenKM needs an available method for reading users and roles. The class DatabasePrincipalAdapter does this job. For more information take a look at OpenKM authentication and Active Directory

principal.adapter=com.openkm.core.DatabasePrincipalAdapter

Since: OpenKM 4.0

Switch OpenKM to demo mode

In demo mode some options are disabled by default.

system.demo=on

Since: OpenKM 4.0

Enabling OCR

To enable OCR you must put the files system path of OCR engine

system.ocr=/usr/local/bin/tesseract

Setting default lang to OpenKM UI

OpenKM By default guess language depending on user language browser configuration. But you can set a language for all OpenKM users by default:

default.lang=es-ES

Force username to lowercase

You can forge all username be written in lower case. It's useful for example when you integrate with microsoft active directory where username is not case sensitive

system.login.username.lowercase=on

Since: OpenKM 4.0

Enable document preview

Several applications are used by OpenKM to generate the document preview: OpenOffice.org, pdf2swf and convert. Read Enable PDF to SWF conversion, Enable image preview and Enable OpenOffice.org service.

Enable PDF to SWF conversion

To enable preview UI tab, OpenKM need to convert pdf files to swf. And must have installed open office as a service too.

system.pdf2swf=/usr/bin/pdf2swf

Note: Read Third-party software integration: SWFTools for a more complete documentation.

Since: OpenKM 4.1

Enable image preview

To enable image preview, you need to install que ImageMagick convert utility and configure:

system.convert=/usr/bin/convert

Since: OpenKM 4.1

Enable OpenOffice.org service

OpenOffice.org is used by OpenKM to convert files to PDF and generating the preview.

system.openoffice=on

Starting with OpenKM 5.0 this properties are changed to:

system.openoffice.path=/usr/lib/openoffice
system.openoffice.tasks=5
system.openoffice.port=2222

Where you should specify a OpenOffice.org installation path, the maximum number of conversion task before restart the service and a port where the OpenOffice.org conversion service will be attached. Only the first one property is mandatory.

Note: Read Third-party software integration: OpenOffice.org for a more up-to-date documentation.

Since: OpenKM 4.0

Configuring e-mail

To configuring e-mail service you must enable subscription and notification properties. View a complete example in Notification and subscription messages.

subscription.message.subject=OpenKM - {0} - {1};
subscription.message.body=Document: <a href=\"{0}\">{1}</a>
notify.message.subject=OpenKM - NOTIFICATION - {0}
notify.message.body=Document: <a href=\"{0}\">{1}</a>

Since: OpenKM 4.1

Configuring password validation

To configuring password validation you have several properties. CompletePasswordValidator is default password validator class that comes by default with OpenKM. By default validator is not enabled. You can also create your own Create password validator Padlock.gif.

You can select which rules validation you want to enable, for example if you only enable validator.password.min.length property, the validator only will validate minimal length.

validator.password=com.openkm.validator.password.CompletePasswordValidator
validator.password.min.length=numeric value greater than 0
validator.password.max.length=numeric value greater than 0
validator.password.min.lowercase=numeric value greater than 0
validator.password.min.uppercase=numeric value greater than 0
validator.password.min.digits=numeric value greater than 0
validator.password.mini.special=numeric value greater than 0
validator.password.error.min.length=Your message error
validator.password.error.max.length=Your message error
validator.password.error.min.lowercase=Your message error
validator.password.error.max.uppercase=Your message error
validator.password.error.min.digits=Your message error
validator.password.error.min.special=Your message error

Since: OpenKM 4.1

Configuring chat service

By default chat and autologin are enabled. In order to enable or disable values can be "on" or "off".

chat.enabled=off
chat.autologin=off

Since: OpenKM 5.0

Configuring schedulers

There're some schedulers that OpenKM uses. Some internally like mail importer and getting repository news and others used by user interface like dashboard refreshing time and keepalive.


Nota clasica.png Values are in minutes.

OpenKM inquires for repository news ( by default each 24 hours )

schedule.repository.info=1440

OpenKM imports mails from imap server ( by default set to 0, that is disabled )

schedule.mail.importer=0

Nota clasica.png In OpenKM 4.1 and before, the default value was 60 and cannot be disabled.

KeepAlive is used by user interface to mantaining browser connected to OpenKM althought users stay sometime without using any operation. For it reason never might be lower that server timeout session ( by default set to 15 minutes ).

schedule.session.keepalive=15

Dashboard data is refreshing by default each 30 minutes.

schedule.dashboard.refresh=30

Since: OpenKM 4.1

Configuring wizard

You can configure a wizard each time any user uploading a document. Wizard can be a sequence of property groups, keywords ( included thesausus ) and categories. By default wizard is disabled.

Can be configured a property groups as a list of property groups name separed by ","

wizard.property.groups=okg:consulting,okg:technology

To enable keyword wizard value must be "on". Default value is "off".

wizard.keywords=on

To enable categories wizard values must be "on". Default value is "off".

wizard.categories=on

Since: OpenKM 5.0

You can replace the default OpenKM logo in the login page and reports.

logo.login
logo.mobi
logo.report

Also can set a message in the login page with:

logo.text

Since: OpenKM 5.1 (configuration stored into database)

Disable document name mismatch check

By default OpenKM will check on checkin the document name to ensure you upload another version of the same document. You can disable this behavior with this configuration property:

system.document.name.mismatch.check=false

Since: OpenKM 5.0.1

Force keywords lowercase conversion

By default keywords are stored as is, but you can force a lowercase conversion using this configuration property:

system.keyword.lowercase

Since: OpenKM 5.1

Disable user assing on document creation

By default when an user creates a document or folder, he is added to the node with full permissions. You can disable this behabior this way:

user.assign.document.creation=off

Since: OpenKM 5.0.2