5.0.2 Configuration Property Changes

Property Name
Base Location
Change Type
Delivered Value
Notes
deploy.local.cas.server
authentication.filter.definition
authentication.filter.mappings
cas.context.name
cas.context.file
cas.datasource.username
cas.datasource.password
cas.require.https
cas.validate.password
N/A (formerly cas.properties)Removed Support for deploying a local cas server for development has been removed. Since the authentication check is completely abstracted from the implementation, it was not adding any value and the old implementation was not sustainable with the release of Rice 2.0.
kfs.versionbuild.propertiesNew5.0.2Current version of the KFS application. Do not change. This will be used when publishing services to the KSB.
application.idbuild.propertiesNewKFSvalue = KFS. Used 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.codebuild.propertiesNewkfsPrefix used for building the application context.
kfs.service.namespace.uribuild.propertiesNewhttp://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.uribuild.propertiesNewhttp://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!
module.endowment.enabledbuild.propertiesModifiedFALSEThe endowment module is being turned off for 5.0.2 public release given lack of testing.
kuali.coeus.integration.bus.security.enabledbuild.propertiesNewFALSEUsed to determine whether bus security is enabled for KFS / KC integration when using a shared Rice instance.
bootstrap.spring.filebuild.propertiesNewclasspath:kfs-startup.xmlThe Spring context file that should be loaded first.
core.property.filesbuild.propertiesModified\
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
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.
core.rice.struts.message.resourcesweb.propertiesModified Same as above.
optional.module.property.filesbuild.propertiesNew,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.
optional.module.rice.struts.message.resourcesweb.propertiesNew Same as above.
optional.module.property.test.filesbuild.propertiesNew Same as above.
property.filesbuild.propertiesModified${core.property.files}${optional.module.property.files}${institution.property.files}Modified to accomodate breaking out property files for KFS 5.x.
property.test.filesbuild.propertiesModified${core.property.test.files}${optional.module.property.test.files}${institution.property.test.files}Same as above.
ojb.persistencebroker.pool.maxactivedatabase.propertiesModified200It's not so much that it is changed, but it may need to be larger than under KFS 4.x. In general, it seems that it needs to be about 4-times the size of the maximum database pool size. It used to default to the pool size, but this number needs to cover the maximum size of *all* connection pools in the application. (4)
oracle.xa.datasource.classdatabase.propertiesNeworacle.jdbc.xa.client.OracleXADataSourceJDBC DataSource class for Oracle which supports XA distributed transactions
mysql.xa.datasource.classdatabase.propertiesNewcom.mysql.jdbc.jdbc2.optional.MysqlXADataSourceJDBC DataSource class for MySQL which supports XA distributed transactions
non.xa.pool.datasource.classdatabase.propertiesNewbitronix.tm.resource.jdbc.lrc.LrcXADataSourceJDBC DataSource class for a non-XA JDBC resource emulating XA with Last Resource Commit
mysql.server.datasource.platformdatabase.propertiesModifiedorg.kuali.rice.core.framework.persistence.platform.MySQLDatabasePlatformRice class for handling Differences between database versions
oracle.server.datasource.platformdatabase.propertiesModifiedorg.kuali.rice.core.framework.persistence.platform.OracleDatabasePlatform"
mysql.impex.admin.usernamedatabase.propertiesNewrootAdmin 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.passworddatabase.propertiesNew Password for the above account.
oracle.impex.admin.usernamedatabase.propertiesNewkuluser_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.passworddatabase.propertiesNewkuluser_adminPassword for the above account.
oracle.impex.tool.schemadatabase.propertiesNewkulusermaintOnly used for Oracle imports. Account which contains the KULUSER_MAINT_PK package and has permissions to create and drop users and kill sessions.
liquibase.logLeveldatabase.propertiesNewinfoDefault log level for the liquibase portion of the db refresh process. NOTE: In a local development environment info is much faster than debug.
datasource.pool.sizedatabase.propertiesRemoved Due to changes in the pooling implementation, this property is now gone and has been replaced by the properties on the next few lines.
rice.server.datasource.pool.sizerice.propertiesRemoved Due to changes in the pooling implementation, this property is now gone along with datasource.pool.size
datasource.maximum.cached.preparedstatementsdatabase.propertiesModifiedcommented outcurrently commented out and unused

specify the number of prepared statements cached per connection
datasource.xapool.connection.test.modedatabase.propertiesModifiedcommented outcurrently 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.impldatabase.propertiesNewXAPoolSpecifies 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.maxActivedatabase.propertiesNew50The 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.minIdledatabase.propertiesNew5The minimum number of connections that can remain idle in the pool, without extra ones being created.
datasource.pool.initialSizedatabase.propertiesNew5How many connections to open (per datasource) upon application startup.
datasource.pool.maxSizedatabase.propertiesNew50The maximum number of connections which the connection pool will maintain between the application server and the database.
datasource.pool.minSizedatabase.propertiesNew5The minimum number of connections which the connection pool will maintain between the application server and the database.
datasource.pool.maxWaitdatabase.propertiesNew30000The 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.journaldatabase.propertiesNewnullConfigure Bitronix logging; disabled with value of null.
datasource.btm.transactionTimeoutdatabase.propertiesNew120Transactional Connection timeout in seconds. Recommendation for load testing: 120
encryption.keyrice.propertiesModified 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.
*.spring.source.files
*.spring.files
spring.propertiesModification All of the resources which are retrieved by Spring 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
spring.transaction.bean.filespring.propertiesRemoved No longer used with changes to Spring configuration.
spring.datasource.bean.filespring.propertiesRemoved No longer used with changes to Spring configuration.
base.kfs.rice.override.spring.filesspring.propertiesRemoved To match some changes in Rice, this property was renamed to kfs.krad.override.spring.files.
kfs.krad.override.spring.filesspring.propertiesNew List of Spring configuration files which should be injected into the KRAD/KR module of the Rice portion of the application.
access.security.rice.spring.filesspring.propertiesRemoved To match some changes in Rice, this property was renamed to access.security.krad.override.spring.files
access.security.krad.override.spring.filesspring.propertiesNew Used to inject custom versions of services for the Access Security module.
core.override.spring.filesspring.propertiesNew This and the *.override.spring.files below can be used to inject custom versions of services into the specified Rice module.
coreservice.override.spring.filesspring.propertiesNew "
kim.override.spring.filesspring.propertiesNew "
kew.override.spring.filesspring.propertiesNew "
ksb.override.spring.filesspring.propertiesNew "
location.override.spring.filesspring.propertiesNew "
kfs.ehcache.config.locationbuild.propertiesNewclasspath:kfs.ehcache.xmlLocation of the configuration file for the EHCache settings for KFS objects.
step.status.check.intervalbuild.propertiesNew Unused and depracated batch container setting
kim.callback.service.bus.security.enabledbuild.propertiesNewTRUEKuali Service Bus implementation parameter
kew.callback.service.bus.security.enabledbuild.propertiesNewTRUEKuali Service Bus implementation parameter
cache.service.bus.security.enabledbuild.propertiesNewTRUEKuali Service Bus implementation parameter
soap.service.default.service.bus.security.enabledbuild.propertiesNewFALSEKuali Service Bus implementation parameter
tests.non.java.resourcesbuild.propertiesModified${non.java.resources},\
**/*.txt,\
**/*.csv,\
**/*.sql,\
**/BatchInputFileWithNoExtension
Non-Java files that should be included in the classpath for unit testing.
accountCreationServiceSOAP.exposebuild.propertiesModifiedFALSEThis 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.excludebuild.propertiesModified**/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.jarsbuild.propertiesModifiedabdera*.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

#xapool*.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.
base.directorydirectory.propertiesModified${basedir.safe}/kualiThe base directory during the build process to locate supporting files not in the KFS project. Changed base directories to not default to root dirs, to keep all files within the main project folder, and to be consistent across platforms.
appserver.homedirectory.propertiesModified${basedir.safe}/build/tomcatDetermines where the build will look for your application server. Changed to be consistent across platforms.
external.config.directorydirectory.propertiesModified${basedir.safe}/build/temp/optThe base directory for external configuration files and work directories. Changed to be consistent across platforms.
appserver.lib.dirdirectory.propertiesModified${appserver.home}/libuncommented for 5.0.2
appserver.classes.dirdirectory.propertiesModified${appserver.home}/libuncommented for 5.0.2
impex.directorydirectory.propertiesNew${database.directory}/kfs-db/db-impexRoot directory for impex tool; included in KFS project as of 5.0.1.
base.deploy.directorydirectory.propertiesRemoved  
security.directorydirectory.propertiesModified${base.security.directory}/${build.environment}/kfsAfter updating ant files to have different project names to allow them to display different names in Eclipse, replaced ${ant.project.name} property with kfs
settings.directorydirectory.propertiesModified${base.settings.directory}/${build.environment}/kfs"
logs.directorydirectory.propertiesModified${base.logs.directory}/${build.environment}/kfs"
external.work.directorydirectory.propertiesModified${base.work.directory}/${build.environment}/kfs"
deploy.working.directorydirectory.propertiesRemoved  
log4j.library.filelogging.propertiesRemoved  
kfs.rice.versionrice.propertiesModified2.1.6Rice version for KFS 5.0.2 updated to 2.1.6
rice.server.war.directoryrice.propertiesNew${build.appserver.directory}Added property to point the the directory with the Rice server war used for copying Rice web content.
rice.kew.ignoreUnknownPrincipalIdsrice.propertiesNewTRUEIf false, KEW will fail (throw to exception) documents with invalid principals in their route actions
application.urlurl.propertiesModified${appserver.url}/${app.code}-${build.environment}The base url of the application, replaced ${ant.project.name} with ${app.code}
kc.application.urlurl.propertiesModifiedhttp://localhost:8080/kc-trunkKuali Coeus application server URL, replaced foundation KC server URL with localhost.
core.jstl.constants.classnamesweb.propertiesRemoved No longer used.
jstl.constants.main.classweb.propertiesRemoved No longer used.
core.javascript.filesweb.propertiesModifiedkrad/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
Modified to accomodate portal changes pulled in from Rice.
core.portal.javascript.filesweb.propertiesModifiedkrad/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
Same as above.
javamelody.system.actions.enabledweb.propertiesNewFALSEUse 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.definitionsweb.propertiesNew\
<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.definitionweb.propertiesNew<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.mappingsweb.propertiesNew<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
rice.struts.message.resourcesweb.propertiesModified${core.rice.struts.message.resources} 
${optional.module.rice.struts.message.resources} 
${institution.rice.struts.message.resources}
Modified to include optional.module.rice.struts.message.resources