Timesheets Code
Brought to you by:
jncolin
File | Date | Author | Commit |
---|---|---|---|
src | 2015-03-27 | jnc | [1da547] Added filtering and sorting options in user and... |
.gitignore | 2014-07-03 | jnc | [7a8948] added in the application the possibility to dis... |
faces-config.NavData | 2014-10-15 | jnc | [20d393] |
pom.xml | 2015-03-25 | jnc | [7a1294] Fixed a bug in report management; handling sing... |
readme.txt | 2014-04-02 | Jean-Noël Colin | [a9267c] Updated installation instructions |
settings_sample.xml | 2014-04-02 | Jean-Noël Colin | [05d72e] Added some installation instructions |
Technical requirements: * Java 7 * Tomcat 7 * MySQL Database 5.5 * LDAP Server for user authentication (OpenLDAP, Active Directory) Installation instructions: MySQL ----- 1. Create a database in mysql create database timesheets default charset utf8; 2. Create a user and grant privileges grant all on timesheets.* to 'tsuser'@'%' identified by 'tspwd'; 3. Log in to MySQL with the user just defined and run the script timesheets.sql found under scripts (make sure triggers get created, this may require running the script as root) Tomcat ------ 1. Copy MySQL Connector/J + java mail + java activation framework jar files to the lib directory under tomcat installation 2. Edit conf/server.xml to add the following to the GlobalNamingResources element (of course adapt to the settings defined at previous step) <Resource name="jdbc/tsdb" auth="Container" type="javax.sql.DataSource" username="tsuser" password="tspwd" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/timesheets" maxActive="128" maxIdle="8" validationQuery="select 1" /> <Resource name="mail/Session" auth="Container" type="javax.mail.Session" mail.smtp.host="my.stmp.server"/> Customize, compile, package and deploy app ------------------------------------------ 1. Copy seetings_sample.xml to settings.xml 2. Update settings.xml to reflect your local installation * in servers section, update the server definition by specifying the admin username and password, or alternatively create a new server entry * in the profile section, define the following properties: + settings.security_template: should be AD if you use Active Directory or LDAP if you use a LDAP server + settings.ldap_url: url of the LDAP or AD server incl. root dn + settings.ldap_search_node: LDAP node under which users can be found + settings.ldap_bind_dn: DN to use to bind to LDAP for search operations + settings.ldap_bind_password: password to bind to LDAP for search operations + settings.ldap_search_attr: attribute used to search for users. Can be mail, sAMAccountName, uid... + settings.logo_file: filename of your logo, which should be found under src/main/config/config_name where config_name is defined in your settings.xml + settings.as_url: URL of the tomcat server to deploy the app + settings.as_name: name of the tomcat server defined in the servers section + settings.as_context: context to which the application should be deployed 3. Compile, package and deploy (assuming that you kept the profile name to dev) mvn -s settings.xml -P dev clean package tomcat7:redeploy 4. Users are created upon their first login, so there is no need to create users before 5. For the first user to get SUPER admin rights, update has to be done manually in the database update users set level='SUPER' where userid = xxxx; From then on, the user has the privileges to grant ADMIN and SUPER privileges to others There is a (very) limited documentation available under doc/doc.html