Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Bold, italicized properties are very important and most likely must be changed from their defaults during installation.
Bold properties are likely to need modification during implementation.

All property files listed below are in build/properties within the KFS project.

Category

Property

Default

Notes

Module Configuration Properties
(build.properties)

 

 

 

 

module.labor.distribution.enabled

true

Whether to include the configuration for the Labor Distribution, Budget Construction, and Effort Commitment Modules.  (ld,bc,ec)

 

module.contracts.and.grants.enabled

true

Whether to include the configuration for the Contracts and Grants module. (cg) Only one of cg or kc can be set to true or both can be set to false.

 

module.external.kuali.coeus.enabled

falseWhether to include the configuration for the Kuali Coeus integration. (kc) Only one of cg or kc can be set to true or both can be set to false.

 

module.accounts.receivable.enabled

true

Whether to include the configuration for the Accounts Receivable module. (ar)

 

module.purchasing.enabled

true

Whether to include the configuration for the Purchasing/Accounts Payable module. (purap)

 

module.capital.asset.enabled

true

Whether to include the configuration for the Capital Asset and Capital Asset Builder Modules. (cam,cab)

 

module.access.security.enabled

false

Whether to include the configuration for the Access Security module. (sec)  This module overrides pieces of the coa, gl, ld, and purap modules.

URLs
(url.properties)

 

 

 

 

appserver.url

http://localhost:8080/

tells the build what the base URL is for the application server in which the application will be deployed

 

application.url

${appserver.url}/${app.code}-${build.environment}

the base url of the application

 

cas.url

${appserver.url}/cas

the base url for your CAS server

 

rice.url

(dynamic)

The base url for the rice struts module. This is set dynamically in build.xml based on the rice.standalone flag. If you are using any other application server besides the one containing KFS, you will need to set this in your kfs-build.properties.

 

externalizable.static.content.url

${application.url}/static

the base url for static content like images and help that could reside within the application or be maintained by other group(s) on other server(s)

 

externalizable.help.url

${externalizable.static.content.url}/help/

the base url for help content

 

externalizable.images.url

${externalizable.static.content.url}/images/

the base url for images that can reside outside the application

 

externalizable.xml.url

${externalizable.static.content.url}/xml/

the base url for xml (xsd, xsl, etc.) related files that can reside outside the application

 kc.application.urlhttp://localhost:8080/kc-trunkKuali Coeus application server URL used for KFS/KC integration.

Database
(database.properties)

 

 

 

 mysql.ojb.platformMySQLThe property value (for datasource.ojb.platform) which indicates a MySQL database
 oracle.ojb.platformOracle9iThe property value (for datasource.ojb.platform) which indicates an Oracle database

 

datasource.ojb.platform

${oracle.ojb.platform}

used by the build to configure OJB and determine the appropriate driver and KualiDBPlatform implementations to use

 mysql.driver.classcom.mysql.jdbc.DriverJDBC Driver class for the MySQL platform
 oracle.driver.classoracle.jdbc.OracleDriverJDBC Driver class for the Oracle platform
 p6spy.driver.classcom.p6spy.engine.spy.P6SpyDriverJDBC Driver class when p6spy is enabled
 oracle.xa.datasource.classoracle.jdbc.xa.client.OracleXADataSourceJDBC DataSource class for Oracle which supports XA distributed transactions
 mysql.xa.datasource.classcom.mysql.jdbc.jdbc2.optional.MysqlXADataSourceJDBC DataSource class for MySQL which supports XA distributed transactions
 non.xa.pool.datasource.classbitronix.tm.resource.jdbc.lrc.LrcXADataSourceJDBC DataSource class for a non-XA JDBC resource emulating XA with Last Resource Commit
 mysql.server.datasource.platformorg.kuali.rice.core.framework.persistence.platform.MySQLDatabasePlatformRice class for handling Differences between database versions
 oracle.server.datasource.platformorg.kuali.rice.core.framework.persistence.platform.OracleDatabasePlatformRice class for handling Differences between database versions
 mysql.impex.admin.usernamerootAdmin user used for the impex db import portion of the db refresh when MySQL is the specified platform. This account will be used to create and destroy users and schemas, and for MySQL, must be an account with administrative privileges (such as root).
 mysql.impex.admin.password(unset)Password for the above account.
 oracle.impex.admin.usernamekuluser_adminAdmin user used for the impex db import portion of the db refresh when Oracle is the specified platform. This account will be used to create and destroy users and schemas and for Oracle, must have execute privilege on the KULUSER_MAINT_PK package owned by the account specified in the oracle.impex.tool.schema property.
 oracle.impex.admin.passwordkuluser_adminPassword for the above account.
 oracle.impex.tool.schemakulusermaintOnly used for Oracle imports. Account which contains the KULUSER_MAINT_PK package and has permissions to create and drop users and kill sessions.
 liquibase.logLevelinfoDefault log level for the liquibase portion of the db refresh process. NOTE: In a local development environment info is much faster than debug.

 

datasource.username

 

account that the application should use to access the database

 

datasource.password

 

password for the application database account

 

ojb.persistencebroker.pool.maxactive

200

The maximum number of connections the persistence broker pool will handle.
When running with Embedded Rice, this can be the same as the datasource.pool.size property.
When running with a standalone Rice server (to which this server will have direct database connections), this property must be the sum of the datasource.pool.size and rice.server.datasource.pool.size

 

datasource.maximum.cached.preparedstatements

commented out

currently commented out and unused

specify the number of prepared statements cached per connection

 

datasource.connection.timeout

100000

used in datasource connections to close once they have been inactive for a period of time

 

transaction.timeout

${datasource.connection.timeout}

used in datasource configuration to force transactions to timeout after they've run too long

 

datasource.validating.query

select 1 from dual

Query used to test the connection to the database.

 datasource.xapool.connection.test.modecommented out

currently commented out and unused

XAPool connection test mode:

0: no check, the connection is taken from the pool without any verification
1: test if the connection is closed or not, if it is closed, another connection is tested, until we can return a valid connection
2: a test is made on the connection with a jdbc statement string. You need to set this string with setJdbcTestStmt(string test) method on StandardXAPoolDataSource object or StandardPoolDataSource object if you use this one. In a lot of case, you can use "select 1" to test your connection.
3: test all the unused connections inside the pool, and verify if a connection is closed. If a connection is closed, the pool removes it and creates a new one if needed.
4: verify all the unused connections from the pool with a jdbc statement string (see level 2, to set up a jdbc statement string)

 connection.pool.implXAPoolSpecifies the implementation of the connection pool for the purpose of transaction management.  Presently, the only supported value is "XAPool" (same as KFS 4.x) but other transaction managers will be added in future release of KFS and Rice.
 datasource.pool.maxActive

50

The maximum number of connections which can be checked out from the pool at any given time.  Requests beyond this number will block until a connection is returned to the pool.
 datasource.pool.minIdle5The minimum number of connections that can remain idle in the pool, without extra ones being created.
 datasource.pool.initialSize5How many connections to open (per datasource) upon application startup.
 datasource.pool.maxSize50The maximum number of connections which the connection pool will maintain between the application server and the database.
 datasource.pool.minSize5The minimum number of connections which the connection pool will maintain between the application server and the database.
 datasource.pool.maxWait30000The number of milliseconds for which to wait for a connection slot to become available in the pool.  After this time, the connection attempt will fail and throw an exception.
 datasource.btm.journal

null

Configure Bitronix logging; disabled with value of null.
 datasource.btm.transactionTimeout120Transactional Connection timeout in seconds. Recommendation for load testing: 120

Directories
(directory.properties)

 

 

 

 

base.directory

${basedir.safe}/kuali

base directory during the build process to locate supporting files not in the KFS project (see below)

 

appserver.home

${basedir.safe}/build/tomcat

determines where the build will look for your application server

 

external.config.directory

${basedir.safe}/build/temp/opt

the base directory for external configuration files and work directories

 

tomcat.version

6

Changes the defaults for the appserver lib directory location, since there is a structural change between the versions.

 

appserver.lib.dir

${appserver.home}/lib

 

 

appserver.classes.dir

${appserver.home}/lib

 

 

appserver.deploy.dir

${appserver.home}/webapps

 

 

appserver.config.dir

${appserver.home}/conf

 

 

appserver.localhost.dir

${appserver.config.dir}/Catalina/localhost

 

 

appserver.work.dir

${appserver.home}/work/Catalina/localhost

 

 work.directoryworkWork directory (and subdirs below)
 source.directory${work.directory}/src 
 database.directory${work.directory}/db 
 impex.directory${database.directory}/kfs-db/db-impex 
 

webroot.directory

${work.directory}/web-root 
 webinf.directory${webroot.directory}/WEB-INF 
 tags.directory${webinf.directory}/tags 
 classes.directory${webinf.directory}/classes 
 lib.directory${webinf.directory}/lib 
 metainf.directory${webroot.directory}/META-INF 
 static.directory${webroot.directory}/static 
 help.directory${static.directory}/helpDirectory for static help content.
 

xsd.directory

${static.directory}/xsdDirectory for static xsd content.
 

test.infrastructure.source.directory=test/infrastructure/src

 Test directories (for unit/integration tests)
 test.unit.source.directory=test/unit/src  
 test.integration.source.directory=test/integration/src  
 test.lib.directory=test/lib  

 

base.security.directory

${external.config.directory}/sa_forms/java

the directory where secure application property files are located (application server user must have read access)

 

base.settings.directory

${external.config.directory}/j2ee

the directory that contains the non-secure property files that are nonetheless external to the deployed application (application server user must have read access)

 

base.logs.directory

${external.config.directory}/logs

the directory for the log files output by the application (application server user must have write access)

 base.work.directory${external.config.directory}/workthe directory that is the root for the base working directory that is external to the application

 

security.directory

${base.security.directory}/${build.environment}/kfs

the directory where secure application property files for a specific environment are located (application server user must have read access)

 

settings.directory

${base.settings.directory}/${build.environment}/kfs

the directory that contains the non-secure property files for a specific environment that are nonetheless external to the deployed application (application server user must have read access)

 

logs.directory

${base.logs.directory}/${build.environment}/kfs

the directory for the log files output by the application (application server user must have write access)

 

external.work.directory

${external.config.directory}/work/${build.environment}/kfs

the base working directory that is external to the application (used for storage of attachments, batch input files, and generated reports - application server user must have read/write access to all subdirectories)

 

attachments.directory

${external.work.directory}/attachments

the base working directory for storage of note-associated attachments that are uploaded by users

 

staging.directory

${external.work.directory}/staging

the base working directory for storage of batch input files

 temp.directory${external.work.directory}/tempa directory for temporary file storage, e.g. during pdf generation

 

reports.directory

${external.work.directory}/reports

the base working directory for oltp and batch report generation

 build.directorybuildBuild support file directories and subdirectories
 build.external.directory${build.directory}/external 
 build.appserver.directory${build.external.directory}/appserver 
 build.user.directory${build.external.directory}/user 
 build.work.directory${build.external.directory}/work 
 build.project.directory${build.directory}/project 
 licenses.directorylicenses 
 build.distribution.directory${build.directory}/distribution 
 build.distribution.licenses.directory${build.distribution.directory}/${licenses.directory} 
 build.server.lib.directory${build.directory}/server-lib 
 build.rice.lib.directory${build.directory}/rice-lib 
 

build.kfs.lib.directory

${build.directory}/kfs-lib 

 

drivers.directory

${build.directory}/drivers

determines where the build will look for your database drivers

 all.temp.directory${build.directory}/temptemp directory used by build
 war.directory${build.directory}/wardirectory used for building war
 

war.classes.directory

${war.directory}/WEB-INF/classesdirectory with classes to go into the war
 test.directory${build.directory}/testTesting directories
 test.classes.directory${test.directory}/classes 
 

test.xml.results.directory

${test.directory}/xml 
 

deployDir

${build.directory} 
 

test.html.results.directory

${deployDir}/test 
 

doc.directory

${build.directory}/docjavadoc directory
 

dddoc.directory

${build.directory}/doc-dd-tags 
 context.filecontext.xmlvarious file name properties
 carol.filecarol.properties 
 security.filesecurity.properties 
 keystore.filenamerice.keystore 
 configuration.fileconfiguration.properties 
 p6spy.filespy.properties 
 web.fileweb.xml 
 spring.ide.support.file.springBeans 
 ojb.properties.fileOJB.properties 
 ojb.logging.fileOJB-logging.properties 
 ojb.repository.fileOJB-repository.xml 

 

encrypt.attributes.properties.file

fieldsToEncrypt.properties

the file that lists the tables and columns that should be processed by the PostDataLoadEncryptionStep

 

security.property.file

${security.directory}/${security.file}

the single secure property file currently used by the application

 

keystore.file

${security.directory}/${keystore.filename}the single keystore file currently used by the KSB to authenticate services

Rice Configuration
(rice.properties)

 

 

 

 

rice.standalone

false

Whether to configure KFS during the build process to run with an external Rice server instead of an embedded one (the default for development.)

 

deploy.local.rice.server

false

Whether to configure the local tomcat server with a Rice standalone instance. Used in conjunction with the rice.standalone property above.

 

rice.url

(dynamic)
rice.standalone=false : ${application.url}
rice.standalone=true : ${appserver.url}/${rice.application}-${build.environment}

The base URL (http://host:port/context) for the standalone rice server.

 

rice.config.property.file

${appserver.home}/conf/rice-config.xml

Where the Rice server will pull it's configuration information (URLs/DB connections/etc...). This is used to create the file during the build process. The default is a location that Rice naturally searches for configuration information.

 

rice.server.datasource.username

${datasource.username}

jdbc username for the Rice server components (KEW/KIM/KSB). It will also be used when configuring a local Rice standalone server.

 

rice.server.datasource.password

${datasource.password}

jdbc password for the Rice server components (KEW/KIM/KSB). It will also be used when configuring a local Rice standalone server.

 

rice.server.datasource.connection.timeout

${datasource.connection.timeout}

jdbc connection timeout for the Rice server components (KEW/KIM/KSB). It will also be used when configuring a local Rice standalone server.

 

rice.server.datasource.validating.query

${datasource.validating.query}

jdbc validating query for the Rice server components (KEW/KIM/KSB). It will also be used when configuring a local Rice standalone server.

 

rice.server.datasource.maximum.cached.preparedstatements

${datasource.maximum.cached.preparedstatements}jdbc max cached prepared statements value for the Rice server components (KEW/KIM/KSB). It will also be used when configuring a local Rice standalone server.
 rice.custom.ojb.properties${ojb.properties.file}Where, on the classpath, to pull the OJB properties file for the rice components
 rice.namericeBase Rice version properties
 kfs.rice.version2.1.6-rc2Due to release timing, the Rice version distributed with KFS 5.0.2 is 2.1.6-rc2. This is equivalent to the final Rice 2.1.6 release.
 rice.output.licenses.suffix-licenses.zip 
 rice.server.war.file.name.prefix${rice.name}-web- 
 rice.server.war.file.name${rice.server.war.file.name.prefix}${kfs.rice.version}.war 
 

rice.server.war.directory

${build.appserver.directory} 
 

rice.application

kr 
 kew.applicationkew 
 ksb.applicationksb 
 

kim.application

kim 

 

rice.ksb.url

${application.url}/${ksb.application}

the base url for the service bus struts module

 

rice.ksb.http.url.expression

(blank)

  1. In a production or clustered environment, this should be the private IP address, port and base context name for the location of the KSB services
    See the spring-rice-configurer.xml file for how this is used.
    This odd syntax here is to allow it to be removed completely
    To use, make the value of the property "http.url=host:port/context-name"

 

keystore.alias

rice

 

 

keystore.password

r1c3pw

Password used to open the keystore.

 

encryption.key

7IC64w6ksLU

Used by the DemostrationGradeEncryptionService to encrypt / decrypt data in the database

Not that anyone should be using the default key provided by the foundation, but if you are, the value of this property has been changed to account for a change in the cryptography library.  If you have any data in your database encrypted with the old key value from KFS 4.1.1, you will need to update your security.properties with the new value in rice.properties.

 

rice.enable.nonproduction.data.unmasking

false

Specifies whether data can be unmasked in non-production environments. Can be used to prevent access to sensitive data if loaded into a test environment.

 rice.kew.enableKENNotificationfalse

determines if notifications coming out of KEW should be forwarded to KEN

 

rice.struts.config.files

/${rice.application}/WEB-INF/struts-config.xml

the files that define the struts context for the rice struts module

 

rice.kns.struts.config.files

/${rice.application}/WEB-INF/struts-config.xml

the files that define the struts context for the kns struts module

 

rice.kew.struts.config.files

/${kew.application}/WEB-INF/struts-config.xml

the files that define the struts context for the workflow struts module

 

rice.kew.log4j.settings.path

${log4j.settings.file}the path to the file containing the log4j configuration for workflow

 

rice.ksb.struts.config.files

/${ksb.application}/WEB-INF/struts-config.xml

the files that define the struts context for the ksb struts module

 

rice.kim.struts.config.files

/${kim.application}/WEB-INF/struts-config.xml

the files that define the struts context for the kim struts module

 

rice.kew.attachment.directory

${attachments.directory}

the directory where attachments uploaded through the workflow ui are stored

 

rice.kew.xml.directory

${staging.directory}/workflow

the directory where the xml files that define your workflow data should be stored when they are uploaded

 

rice.kew.xml.poll.interval.secs

30

the frequency with which workflow checks for new files in the xml directory

 

rice.kew.xml.initial.delay.secs

60

the length of time workflow waits to do the first check of the xml directory when the application starts up

 

rice.kew.actionlist.outbox

falseglobally disable or enable the outbox (screen to which there is a link in the action list that shows the documents a user has taken action on)
 

rice.kew.ignoreUnknownPrincipalIds

trueIf false, KEW will fail (throw to exception) documents with invalid principals in their route actions
 

rice.kew.secure.workflowdocument.javaservice.endpoint

trueRice web service configuration
 rice.kew.secure.workflowutility.javaservice.endpointtrue 
 rice.kew.simpleDocumentActionsService.securitytrue 
 rice.kew.secure.workflowutility.soapservice.endpointtrue 
 rice.kim.soapExposedService.jaxws.securitytrue 
 

rice.kim.identityArchiveServiceImpl.executionIntervalSeconds

600Identity Archive Service settings
 rice.kim.identityArchiveServiceImpl.maxWriteQueueSize300 

 

rice.ksb.message.delivery

async

determines whether the workflow processes that would normally be performed asynchronously are asynchronous (async) or are synchronous instead (sync)

 

rice.ksb.route.queue.max.retry.attempts

3

how many times the service bus will try to send a message when it is encountering an exception that may be due to a resource outage, for example

 

rice.ksb.route.queue.time.increment

1000

the length of time the service bus will wait before retrying after each failed attempt to send a message

 

rice.ksb.thread.pool.size

20

the number of threads available to process service bus messages, i.e. deal with queued workflow documents

 

rice.ksb.bus.refresh.rate.seconds

120the number of seconds between each "ping" of the service bus to see what services are currently available
 

rice.cxf.client.connectionTimeout

30000CXF client settings
 rice.cxf.client.receiveTimeout120000 
 rice.cxf.client.allowChunkingfalse 

 

rice.ksb.batch.mode

false

Set to true to prevent the application from publishing the services to a master service bus. For use on application configurations that should not receive service calls from other applications. (batch jobs and unit tests)

 

rice.kim.cache.*.max.size

3000

The maximum number of items which can be in one of the KIM memory caches.

 

rice.kim.cache.*.max.age.seconds

(varies)

How long after adding that an item in the cache will be considered invalid.

 

rice.org.kuali.rice.kim.bo.ui.PersonDocumentEmploymentInfo.hidden

baseSalaryAmountKIM hidden fields
 rice.kim.hide.PersonDocumentAddress.typeHM 
 rice.kim.hide.PersonDocumentPhone.typeHM 
 rice.kim.show.blank.qualifierstrue 

 

rice.kns.cache.parameter.max.size

1000

The maximum number of items in the System parameter cache.

 

rice.kns.cache.parameter.max.age.seconds

3600

How long after adding that an item in the cache will be considered invalid.

 

rice.kns.cache.nonDatabaseComponent.max.size

2000

The maximum number of items in the cache of non-database components used by the parameter service.

 

rice.kns.cache.nonDatabaseComponent.max.age.seconds

3600

How long after adding that an item in the cache will be considered invalid.

 

rice.kns.cache.methodresult.max.size

1000

The maximum number of items in the method result cache used for some service calls.

 

rice.kns.cache.methodresult.max.age.seconds

60

How long after adding that an item in the cache will be considered invalid.

 

rice.kns.cache.methodresult.nocopy.max.size

1000

The maximum number of items in the method result cache used for some service calls.

 

rice.kns.cache.methodresult.nocopy.max.age.seconds

600

How long after adding that an item in the cache will be considered invalid.

 

rice.kns.session.document.cache.size

1000

Number of session documents which will be kept in memory at one time. Above this, they are purged and reloaded from a persistent database store as needed.

 

rice.kim.cache.permission.refresh.period.seconds

3600 
 rice.kim.cache.role.refresh.period.seconds3600 
 

rice.kew.email.reminder.lifecycle.enabled

falseproperties for Action List notification
 rice.kew.mail.smtp.host${mail.relay.server} 
 rice.kew.mail.transport.protocol${mail.transport.protocol} 

 

rice.kew.daily.email

false

turn on/off daily workflow notifications

 

rice.kew.weekly.email

false

turn on/off weekly workflow notifications

 

rice.kew.daily.email.cron.expression

0 0 1 * * ?

the cron expression defining when daily emails will be sent (default to 1AM every day)

 

rice.kew.weekly.email.cron.expression

0 0 2 ? * 2

the cron expression defining when daily emails will be sent (default to 2AM every Monday)

 

classpath.resource.prefix

/WEB-INF/classes/Needed by DWR
 validate.data.dictionarytruewhether to validate the DD upon startup
 validate.ebo.referencestrue 

Logging
(logging.properties)

 

 

 

 

log4j.file

log4j.properties

the name of the log4j settings file

 

log4j.settings.file

${settings.directory}/${log4j.file}

The file the server will look for to configure log4j

 

appenders

INFO, LogFile, StdOut

this property determines what log statements will be printed by default and whether the logs go to the log file or standard out (By default, this one is set dynamically in build.xml)

 

memory.monitor.threshold

.85

determines when the MemoryMonitor considers the application to have exceeded reasonable memory usage (decimal represents percentage of tenured allocation)

 

log4j.reload.minutes

5

determines how frequently the logging framework (Log4jConfigurer) will check for changes to log4j.properties

 

periodic.thread.dump

true

turns on a background process which logs the current thread state of the application to disk

 

periodic.thread.dump.seconds

300

the number of seconds between dumps

 

use.p6spy

false

this property can be used to turn on logging of the SQL generated and executed by the application by intercepting the JDBC driver

Batch
(batch.properties)

 

 

 

 

use.quartz.scheduling

true

determines whether quartz (SchedulerService and scheduleJob) should be used for batch job scheduling and execution - impacts whether the batch scheduling ui works

 

use.quartz.jdbc.jobstore

(dynamic)

This property will be set dynamically by the build script, but you can force it by setting it in your kfs-build.properties file.

 

batch.schedule.cron.expression

00 00 23 ? * *

the Quartz cron expression for the scheduleJobTrigger (in KualiSpringBeansKfs.xml), i.e. when should the standard batch schedule run

 

batch.mailing.list

(unset)

from email address for mail sent by the batch framework (JobListener and other)
and to email address for job failure messages

Spring Configuration
(spring.properties)

 

 

 

 

core.spring.source.files

\
classpath:spring-kfs-imported-rice-beans.xml,\
classpath:spring-additional-rice-beans.xml,\
classpath:org/kuali/rice/core/CommonSpringBeans.xml,\
classpath:kfs-cache-config.xml,\
classpath:org/kuali/kfs/sys/spring-sys.xml,\
classpath:org/kuali/kfs/coa/spring-coa.xml,\
classpath:org/kuali/kfs/fp/spring-fp.xml,\
classpath:org/kuali/kfs/gl/spring-gl.xml,\
classpath:org/kuali/kfs/pdp/spring-pdp.xml,\
classpath:org/kuali/kfs/vnd/spring-vnd.xml

the files that define the spring context for the application - note that further configuration files may be specified in the module definitions

Note: All of the resources which are retrieved by Spring (*.spring.source.files and *.spring.files) should now use an URI-style designation rather than just listing the path. Changes in underlying frameworks have made the use of paths without a scheme ambiguous. (E.g., is org/kuali/kfs/sys/spring-sys.xml a file system path, and if so, what is the base path in which it should be resolved?)

Instead, all properties like that above should explicitly state how they are to be found. E.g.,

classpath:org/kuali/kfs/sys/spring-sys.xml

 

access.security.core.spring.files

,classpath:org/kuali/kfs/sec/spring-sec.xml\
,classpath:org/kuali/kfs/sec/spring-sec-gl-overrides.xml

 

 

access.security.ld.spring.files

,classpath:org/kuali/kfs/module/ld/spring-sec-ld-overrides.xml

 

 

access.security.purap.spring.files

,classpath:org/kuali/kfs/module/purap/spring-sec-purap-overrides.xml

 

 

integration.spring.files

,classpath:org/kuali/kfs/integration/spring-integration.xml

Core spring file containing the empty module definitions for the optional modules.  These definitions are overridden if the module implementation definitions are included.  (via the files below)

 

endowment.spring.files

,classpath:org/kuali/kfs/module/endow/spring-endow.xml

 

 

capital.asset.spring.files

,classpath:org/kuali/kfs/module/cam/spring-cam.xml\
,classpath:org/kuali/kfs/module/cab/spring-cab.xml

 

 

accounts.receivable.spring.files

,classpath:org/kuali/kfs/module/ar/spring-ar.xml

 

 

purchasing.spring.files

,classpath:org/kuali/kfs/module/purap/spring-purap.xml

 

 

contracts.and.grants.spring.files

,classpath:org/kuali/kfs/module/cg/spring-cg.xml

 

 kuali.coeus.spring.files,classpath:org/kuali/kfs/module/external/kc/spring-kc.xml 

 

labor.distribution.spring.files

,classpath:org/kuali/kfs/module/ld/spring-ld.xml\
,classpath:org/kuali/kfs/module/bc/spring-bc.xml\
,classpath:org/kuali/kfs/module/ec/spring-ec.xml

 

 optional.module.spring.source.files(dynamic)Commented out - in the base distribution, this property is generated by build.xml

 

batch.spring.files

,classpath:spring-kfs-batch.xml

 

 

institution.spring.source.files

(blank)

the institution specific files that define the spring context for the application

 

spring.source.files

(dynamic)

This is dynamically built from the above properties based on the enabled module flags.  (See top of this chart.)

 kfs.krad.override.spring.filesclasspath:spring-rice-krad-overrides.xmlList of Spring configuration files which should be injected into the KRAD/KR module of the Rice portion of the application.

 

access.security.krad.override.spring.files

,classpath:org/kuali/kfs/sec/spring-sec-rice-overrides.xml

 

 krad.override.spring.files(dynamic)This is set dynamically in build.xml from the two properties above.
 

core.override.spring.files

(blank)This and the *.override.spring.files below can be used to inject custom versions of services into the specified Rice module.
 coreservice.override.spring.files(blank) 
 kim.override.spring.files(blank) 
 kew.override.spring.files(blank) 
 ksb.override.spring.files(blank) 
 location.override.spring.files(blank) 

 

core.spring.test.files

classpath:org/kuali/kfs/sys/spring-test-env-beans.xml,\
classpath:org/kuali/kfs/sys/spring-sys-unit-test.xml,\
classpath:org/kuali/kfs/sys/spring-sys-test.xml,\
classpath:org/kuali/kfs/gl/spring-gl-test.xml

the core files that are included in the application spring context for unit testing

 optional.module.spring.test.files(dynamic)Commented out - in the base distribution, this property is generated by build.xml

 

endowment.spring.test.files

,classpath:org/kuali/kfs/module/endow/spring-endow-test.xml

 

 

capital.asset.spring.test.files

,classpath:org/kuali/kfs/module/cam/spring-cam-test.xml

 

 

accounts.receivable.spring.test.files

,classpath:org/kuali/kfs/module/ar/spring-ar-test.xml,classpath:org/kuali/kfs/module/ar/spring-test-env-beans.xml

 

 

purchasing.spring.test.files

,classpath:org/kuali/kfs/module/purap/spring-purap-test.xml,classpath:org/kuali/kfs/module/purap/spring-test-env-beans.xml

 

 

contracts.and.grants.spring.test.files

(blank)

 

 

labor.distribution.spring.test.files

(blank)

 

 

institution.spring.test.files

(blank)

the institution specific files that are included in the application spring context for unit testing

 

spring.test.files

(dynamic)

This is dynamically built from the above properties based on the enabled module flags.  (See top of this chart.)

Web Configuration
(web.properties)

 

 

 

 

http.session.timeout.minutes

15

Value for the <session-timeout> parameter in web.xml.

 

core.struts.config.files

/WEB-INF/struts-config.xml

the core files that define the struts context for the application

 

core.rice.struts.message.resources

\
org.kuali.rice.krad.ApplicationResources,\
org.kuali.rice.krad.KRAD-ApplicationResources,\
org.kuali.rice.kew.ApplicationResources,\
org.kuali.rice.ksb.ApplicationResources,\
org.kuali.rice.kim.ApplicationResources,\
org.kuali.rice.krms.ApplicationResources,\
org.kuali.rice.core.web.cache.CacheApplicationResources,\
org.kuali.kfs.coa.coa-resources,\
org.kuali.kfs.fp.fp-resources,\
org.kuali.kfs.gl.gl-resources,\
org.kuali.kfs.pdp.pdp-resources,\
org.kuali.kfs.sys.sys-resources,\
org.kuali.kfs.vnd.vnd-resources,\
org.kuali.kfs.sec.sec-resources,

Resources used by the Rice server portion of the framework

 optional.module.rice.struts.message.resources

org.kuali.kfs.module.ar.ar-resources,\
org.kuali.kfs.module.bc.bc-resources,\
org.kuali.kfs.module.cab.cab-resources,\
org.kuali.kfs.module.cam.cam-resources,\
org.kuali.kfs.module.cg.cg-resources,\
org.kuali.kfs.module.ec.ec-resources,\
org.kuali.kfs.module.endow.endow-resources,\
org.kuali.kfs.module.external.kc.kc-resources,\
org.kuali.kfs.module.ld.ld-resources,\
org.kuali.kfs.module.purap.purap-resources

Optional Module Message Resources

 

core.javascript.files

krad/plugins/jquery/jquery-1.6.3.js,\
krad/plugins/cookie/jquery.cookie.js,\
kr/scripts/core.js,\
kr/scripts/dhtml.js,\
kr/scripts/my_common.js,\
kr/scripts/jscalendar-1.0/calendar.js,\
kr/scripts/jscalendar-1.0/lang/calendar-en.js,\
kr/scripts/jscalendar-1.0/calendar-setup.js,\
dwr/engine.js,dwr/util.js,\
dwr/interface/PersonService.js,\
kr/scripts/objectInfo.js,\
scripts/rice-overrides.js

the core javascript files that should be available to every page in the application

 

core.portal.javascript.files

krad/plugins/jquery/jquery-1.6.3.js,\
krad/plugins/cookie/jquery.cookie.js,\
krad/plugins/scrollto/jquery.scrollTo-1.4.2-min.js,\
krad/plugins/blockUI/jquery.blockUI.js,\
kr/scripts/my_common.js,\
krad/plugins/easydrag/jquery.easydrag.js,\
krad/plugins/fancybox/jquery.fancybox-1.3.4.pack.js,\
krad/plugins/easing/jquery.easing-1.3.pack.js,\
krad/plugins/jgrowl/jquery.jgrowl.js,\
krad/scripts/portal.initialize.js,\
rice-portal/scripts/easyXDM/easyXDM.js

the javascript files that should be available to the portal

 

core.css.files

kr/css/kuali.css,kr/scripts/jscalendar-1.0/calendar-win2k-1.css

the core css files that should be available to every page in the application

 

core.portal.css.files

css/portal.css

the css files that should be available to the portal

 javamelody.system.actions.enabledfalseUse for JavaMelody monitoring configuration. This parameter enables or disables the system actions garbage collector, http sessions, heap dump, memory histogram, process list, jndi tree, opened jdbc connections, database (near the bottom of reports). These actions have confirmations when necessary.
 monitoring.filter.definitions

\
<filter>\n\
<filter-name>monitoring</filter-name>\n\
<filter-class>net.bull.javamelody.MonitoringFilter</filter-class>\n\
<init-param>\n\
<param-name>url-exclude-pattern</param-name>\n\
<param-value>/static/.*|/kr/static/.*|/kr/images/.*|/images-portal/.*</param-value>\n\
</init-param>\n\
<init-param>\n\
<param-name>system-actions-enabled</param-name>\n\
<param-value>${javamelody.system.actions.enabled}</param-value>\n\
</init-param>\n\
<init-param>\n\
<param-name>http-transform-pattern</param-name>\n\
<param-value>\\d+</param-value>\n\
</init-param>\n\
</filter>\n\
<filter-mapping>\n\
<filter-name>monitoring</filter-name>\n\
<url-pattern>/*</url-pattern>\n\
</filter-mapping>\n\
<listener>\n\
<listener-class>net.bull.javamelody.SessionListener</listener-class>\n\
</listener>\n

Use for JavaMelody monitoring configuration.
 authentication.filter.definition

<filter>\
\n\t\t<filter-name>CAS Authentication Filter</filter-name>\
\n\t\t<filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>\
\n\t\t<init-param>\
\n\t\t\t<param-name>casServerLoginUrl</param-name>\
\n\t\t\t<param-value>${cas.url}/login</param-value>\
\n\t\t</init-param>\
\n\t\t<init-param>\
\n\t\t\t<param-name>serverName</param-name>\
\n\t\t\t<param-value>${appserver.url}</param-value>\
\n\t\t</init-param>\
\n\t</filter>\
\n\t<filter>\
\n\t\t<filter-name>CAS Validation Filter</filter-name>\
\n\t\t<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>\
\n\t\t<init-param>\
\n\t\t\t<param-name>casServerUrlPrefix</param-name>\
\n\t\t\t<param-value>${cas.url}</param-value>\
\n\t\t</init-param>\
\n\t\t<init-param>\
\n\t\t\t<param-name>serverName</param-name>\
\n\t\t\t<param-value>${appserver.url}</param-value>\
\n\t\t</init-param>\
\n\t</filter>\
\n\t<filter>\
\n\t\t<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>\
\n\t\t<filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>\
\n\t</filter>

Web Authentication; the value of this property will be included in the filter section of web.xml

This note is mainly for developers.

If you were using the "DummyLoginFilter" in KFS 4.x, you will need to update the definition of this property to reference the new class name:

org.kuali.kfs.sys.web.filter.DevelopmentLoginFilter
 authentication.filter.mappings

<filter-mapping>\
\n\t\t<filter-name>CAS Authentication Filter</filter-name>\
\n\t\t\t<servlet-name>action</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS Validation Filter</filter-name>\
\n\t\t\t<servlet-name>action</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>\
\n\t\t\t<servlet-name>action</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS Authentication Filter</filter-name>\
\n\t\t\t<servlet-name>dwr-invoker</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS Validation Filter</filter-name>\
\n\t\t\t<servlet-name>dwr-invoker</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>\
\n\t\t\t<servlet-name>dwr-invoker</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS Authentication Filter</filter-name>\
\n\t\t\t<servlet-name>batchFileUpload</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS Validation Filter</filter-name>\
\n\t\t\t<servlet-name>batchFileUpload</servlet-name>\
\n\t\t</filter-mapping>\
\n\t\t<filter-mapping>\
\n\t\t\t<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>\
\n\t\t\t<servlet-name>batchFileUpload</servlet-name>\
\n\t\t</filter-mapping>

The value of this property will be included in the filter mapping section of web.xml

 

institution.struts.config.files

 

the institution specific files that define the struts context for the application

 

institution.rice.struts.message.resources

(blank)

the institution specific files containing user messages that will be displayed via struts tags in jsps

 

institution.jstl.constants.classnames

(blank)

Unused and deprecated

 

institution.javascript.files

(blank)

the institution specific javascript files that should be available to every page in the application

 

institution.portal.javascript.files

(blank)

 

 

institution.css.files

 

the institution specific css files that should be available to every page in the application

 

institution.portal.css.files

(blank)

the css files that should be available to the portal

 

struts.config.files

${core.struts.config.files}
${institution.struts.config.files}

all the files that define the struts context for the application

 

rice.struts.message.resources

${core.rice.struts.message.resources} 
 ${optional.module.rice.struts.message.resources} 
 
${institution.rice.struts.message.resources}

all the files containing user messages that will be displayed via struts tags in jsps

 

jstl.constants.classnames

${core.jstl.constants.classnames}
${institution.jstl.constants.classnames}

Unused and deprecated

 

javascript.files

${core.javascript.files}
${institution.javascript.files}

all the javascript files that should be available to every page in the application

 

portal.javascript.files

${core.portal.javascript.files}
${institution.portal.javascript.files}

the javascript files that should be available to the portal

 

css.files

${core.css.files}${institution.css.files}

all the css files that should be available to every page in the application

 

portal.css.files

${core.portal.css.files}${institution.portal.css.files}

the css files that should be available to the portal

Mail
(email.properties)

 

 

 

 

mail.relay.server

 

determines the SMTP server used by MailService

 

mail.transport.protocol

smtp

If your mail server only accepts SSL connections, change this to "smtps"

 

batch.mailing.list

 

from email address for mail sent by the batch framework (JobListener and other) and to email address for job failure messages

 

incident.mailing.list

 

to/from email address for mail sent by the incident reporting framework (KualiExceptionIncident, etc.)

Miscellaneous Configuration
(build.properties)

 

 

 

 application.idKFSUsed to identify the application as KFS on the Kuali service bus.  This value is used when there are multiple nodes (servers) running KFS so that they are recognized as the same system to the KSB.
 app.codekfsPrefix used for building the application context.
 kfs.version5.0.2Current version of the KFS application.  Do not change.  This will be used when publishing services to the KSB.
 kfs.service.namespace.urihttp://kfs.kuali.org/kfs/v5_0Namespace for KFS services on the Kuali Service Bus. DO NOT CHANGE UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING!
 kc-kfs.kfs.service.namespace.urihttp://kfs.kuali.org/kc-kfs/v2_0Namespace for KFS KC-KFS integration services on the Kuali Service Bus. DO NOT CHANGE UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING!
 kuali.coeus.integration.bus.security.enabledfalseUsed to determine whether bus security is enabled for KFS / KC integration when using a shared Rice instance.
 bootstrap.spring.fileclasspath:kfs-startup.xmlThe Spring context file that should be loaded first.

 

is.local.build

(unset)

this property determines whether the build will do a local deployment or package for a deployment on the test node (value does not matter - only tested for existence)

 

is.clustered

false

When true, adds the <distributable /> tag to web.xml.

 

build.environment

dev

this is the kuali and workflow environment

 

production.environment.code

prd

determines what build.environment the ConfigurationService considers your production environment

 

tests.includes

**/*Test.java

this property determines what tests are included when the test target is executed

 

core.property.files

\
classpath:org/kuali/rice/krad/ApplicationResources.properties,\
classpath:org/kuali/rice/krad/KRAD-ApplicationResources.properties,\
classpath:org/kuali/rice/kew/ApplicationResources.properties,\
classpath:org/kuali/rice/ksb/ApplicationResources.properties,\
classpath:org/kuali/rice/kim/ApplicationResources.properties,\
classpath:org/kuali/rice/krms/ApplicationResources.properties,\
classpath:org/kuali/rice/core/web/cache/CacheApplicationResources.properties,\
classpath:org/kuali/kfs/coa/coa-resources.properties,\
classpath:org/kuali/kfs/fp/fp-resources.properties,\
classpath:org/kuali/kfs/gl/gl-resources.properties,\
classpath:org/kuali/kfs/pdp/pdp-resources.properties,\
classpath:org/kuali/kfs/sys/sys-resources.properties,\
classpath:org/kuali/kfs/sec/sec-resources.properties,\
classpath:org/kuali/kfs/vnd/vnd-resources.properties

The core configuration property files that should be available in the ConfigurationService context. In KFS 5.x, this property's contents were changed to reflect that each module has a property file rather than all modules' properties in a single ApplicationResources.properties file.  If you have overridden this property in KFS 4.x, you will want to move your new file references to the institution.property.files property.

 optional.module.property.files

,classpath:org/kuali/kfs/module/ar/ar-resources.properties,\
classpath:org/kuali/kfs/module/bc/bc-resources.properties,\
classpath:org/kuali/kfs/module/cab/cab-resources.properties,\
classpath:org/kuali/kfs/module/cam/cam-resources.properties,\
classpath:org/kuali/kfs/module/cg/cg-resources.properties,\
classpath:org/kuali/kfs/module/ec/ec-resources.properties,\
classpath:org/kuali/kfs/module/endow/endow-resources.properties,\
classpath:org/kuali/kfs/module/ld/ld-resources.properties,\
classpath:org/kuali/kfs/module/external/kc/kc-resources.properties,\
classpath:org/kuali/kfs/module/purap/purap-resources.properties

Since the property files were broken out in KFS 5.x, this property was created to hold the references to the various optional module property files.

 

institution.property.files

(blank)

the institution specific configuration property files that should be available in the ConfigurationService context

 

property.files

${core.property.files}${optional.module.property.files}${institution.property.files}

all the configuration property files that should be available in the ConfigurationService context, along with configuration.properties

 

core.property.test.files

classpath:test-configuration.properties

the core configuration property files that should be added to the ConfigurationService context for unit testing

 optional.module.property.test.files(blank)

the optional configuration property files that should be added to the ConfigurationService context for unit testing

 

institution.property.test.files

(blank)

the institution specific configuration property files that should be added to the ConfigurationService context for unit testing

 

property.test.files

${core.property.test.files}${optional.module.property.test.files}${institution.property.test.files}

all the configuration property files that should be added to the ConfigurationService context for unit testing

 

institutional.configuration.file

(blank)

to add additional properties to the configuration.properties file that is deployed with the application. It will be tokenized using the same properties available to build/project/configuration.properties

 

custom.context.content

(blank)

allows insertion of custom content into the tomcat context file

 

institution.source.directory

(unset)

If this variable is set, code from that path will be compiled into the main war.classes.directory

 

institution.lib.directory

(unset)

if this property is set, the build will copy files from this location into the project lib directory and to the server war

 

institution.test.source.directory

(unset)

 

 

institution.test.lib.directory

(unset)

 

 

institution.web.content.directory

(unset)

Location of another source of web content. If set, it will be overlaid on top of the baseline files in the work/web-root directory.

 feedback.link.url(unset)URL for the feedback link that can be a way for users to provide feedback, report issues, etc.
 licensing.contact.email(unset) 
 step.status.check.interval10Unused and depracated batch container setting
 kfs.ehcache.config.locationclasspath:kfs.ehcache.xmlLocation of the configuration file for the EHCache settings for KFS objects.
 kim.callback.service.bus.security.enabledtrueKuali Service Bus implementation parameter
 kew.callback.service.bus.security.enabled

true

Kuali Service Bus implementation parameter
 cache.service.bus.security.enabledtrueKuali Service Bus implementation parameter
 soap.service.default.service.bus.security.enabledfalseKuali Service Bus implementation parameter
 tests.non.java.resources

${non.java.resources},\
**/*.txt,\
**/*.csv,\
**/*.sql,\
**/BatchInputFileWithNoExtension

Non-Java files that should be included in the classpath for unit testing.
 accountCreationServiceSOAP.exposefalseThis will either enable or disable the KC web-service used to create a CG account. Used in conjunction with other KFS/KC integration parameters.
 rice.lib.jars.to.exclude

**/log4j*,\
**/commons-logging*,\
**/connector-api*,\
**/jta*,\
**/itext*,\
**/ojdbc*,\
**/mysql*,\
**/hsqldb-*.jar

These are JAR files which we want to exclude from the Rice project because they either:

  1. are old (unused even by Rice)
  2. are problems with the Rice classpath we don't want to inherit
  3. are older than the version that KFS is currently using
  4. are in our build/external/appserver directory and we don't want duplicates in WEB-INF/lib
 runtime.only.jars

abdera*.jar,\
activation*.jar,\
aopalliance*.jar,\
asm*.jar,\
avalon*.jar,\
backport*.jar,\
batik*.jar,\
bcprov*.jar,\
cas*.jar,\
cglib*.jar,\
commons-dbcp-*.jar,\
commons-el*.jar,\
commons-httpclient-*.jar,\
commons-pool-*.jar,\
connector-api*.jar,\
geronimo*.jar,\
jasper-*.jar,\
jaxen*.jar,\
jboss*.jar,\
jdom*.jar,\
jotm*.jar,\
mysql*.jar,\
ojdbc*.jar,\
opensaml*.jar,\
p6spy*.jar,\
saaj-impl*.jar,\
struts-el*.jar,\
taglibs*.jar,\
wsdl4j*.jar,\
wss4j*.jar,\
wstx*.jar,\
xalan-serializer*.jar,\
xml-resolver*.jar,\
XmlSchema*.jar,\
xmlsec*.jar,\
xpp3*.jar,\
javamelody*.jar

These are libraries which should not be referenced in KFS code. They need to be there for runtime testing, but their classes should not be referenced in KFS code.

Include Page
Include Footer
Include Footer