Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

Database

  • For a relational data store, we recommend running MySQL version 5.5 or 5.6 locally with three databases:
    • one for KFS OLTP
    • one for standalone Rice OLTP
    • one with KFS/Rice bundled for unit testing
    • the following statements will setup a new MySQL database/user (kfs) for development purposes; NOTE: this is for development use only as it grants all privileges; in a production environment it would make more sense to have multiple users, a more privileged one who can run DDL and create the database objects, and a less privileged users to run the application1.

      create user kfs@localhost identified by 'kfs';
      create user kfs@'%' identified by 'kfs';
      create database kfs default character set 'utf8' default collate 'utf8_bin';
      grant all on kfs.* to kfs@localhost with grant option;
      grant all on kfs.* to kfs@'%' with grant option;

      1 - For example, the DDL user would have all privileges except FILE and EXECUTE. The less privileged APP user would have CREATE, CREATE ROUTINE, CREATE TEMPORARY TABLES, CREATE VIEW, DELETE, INDEX, INSERT, LOCK TABLES, SELECT, SHOW VIEW, UPDATE, and TRIGGER privileges.


Mysql requires some settings in the my.cnf file. You need to add the following settings. After adding them, you must restart mysql.


[mysqld]
max_allowed_packet=64M
transaction-isolation=READ-COMMITTED
lower_case_table_names=1
max_connections=1000
innodb_file_per_table=OFF

Application

  • We recommend building and running KFS locally. The KFS war can be build using maven (mvn -DskipTests=true packageand deployed to a container such as Tomcat.

    Note, the -DskipTests=true is optional, but if you don't skip the tests, they will take some time to run and aren't strictly necessary for packaging the KFS war.

  • We recommend building and running a Standalone Rice instance locally. The Rice war can also be built using maven and deployed to a container such as Tomcat. See the Rice Documentation.  Also, see Development Standalone Rice for information on setting up your database and standalone rice on your workstation.
  • To enable optional modules we need to toggle the module.<module name>.enabled property to true, add the appropriate spring files, and add message property files. Take care to add sec files to the current properties particularly for property.files and rice.struts.message.resources. For example, to enable Access Security:

    module.access.security.enabled=true
    fin.kr.additionalSpringFiles=classpath:org/kuali/kfs/sec/spring-sec-rice-overrides.xml
    institution.spring.source.files=,\
      classpath:org/kuali/kfs/sec/spring-sec.xml,\
      classpath:org/kuali/kfs/sec/spring-sec-gl-overrides.xml,\
      classpath:org/kuali/kfs/module/ld/spring-sec-ld-overrides.xml,\
      classpath:org/kuali/kfs/module/purap/spring-sec-purap-overrides.xml
    property.files=[CURRENT property.files],classpath:org/kuali/kfs/sec/sec-resources.properties
    rice.struts.message.resources=[CURRENT property.files],org.kuali.kfs.sec.sec-resources


For more information on how to configure KFS to connect to a Standalone Rice instance, see 7.0 Technical Changes.

  • No labels