Application configuration
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. This is a list of the admitted configuration properties:
repository.config
repository.home
system.user
default.user.role
default.admin.role
principal.adapter
max.file.size
max.search.results
system.demo
system.ocr
application.url
default.lang
system.login.username.lowercase
system.pdf2swf
system.openoffice
kea.thesaurus.skos.file
kea.thesaurus.owl.file
kea.thesaurus.base.url
kea.thesaurus.vocabulary.serql
kea.stopwords.file
kea.automatic.keyword.extraction.number
kea.thesaurus.tree.root
kea.thesaurus.tree.childs
kea.automatic.keyword.extraction.restriction
subscription.message.subject
subscription.message.body
notify.message.subject
notify.message.body
validator.password
validator.password.min.length
validator.password.max.length
validator.password.min.lowercase
validator.password.min.uppercase
validator.password.min.digits
validator.password.mini.special
validator.password.error.min.length
validator.password.error.max.length
validator.password.error.min.lowercase
validator.password.error.max.uppercase
validator.password.error.min.digits
validator.password.error.min.special
Each time you make some change in the OpenKM.cfg file JBoss server must be restarted to take effect. |
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
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
Switch OpenKM to demo mode
In demo mode some options are disabled by default.
system.demo=on
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 tries setting language depending end user language browser. 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
Enable pdf to swf conversion
To enable preview UI tab, OpenKM need to convert pdf files to swf.
system.pdf2swf=/usr/bin/pdf2swf
Enable open office service
Open office is used by OpenKM to convert files to pdf.
system.openoffice=on
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>
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
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
See also OpenKM.cfg.