#summary Setup instructions for code contributors and testers. Edit this page to reflect any special requirements/deployment criteria that may be necessary. #labels Phase-Deploy,Featured = Requirements = * Sun Java 1.5 (J2SE) * Eclipse 3.1 + JBossIDE 1.6GA plug-in (or higher versions) * MySQL 5.x, which is being used for majority of the development. Contributors are encouraged to work with other RDBMS. If using MySQL, you will need to download MySQL Connector/J (`mysql-connector-java-5.0.6-bin.jar`). * JBoss 4.2.0 GA. This is the application server that is being used for majority of the development. Contributors are encouraged to test deployments on Glassfish, Weblogic, and Websphere. = Download, develop, test and contribute = == Downloading source code and preparing == Checkout the current source from SVN. Follow the URL mentioned below. This project does not use the usual trunk, tags, branches concepts of SVN. {{{ svn checkout https://esn.googlecode.com/svn/source/ esn --username }}} It will contain a directory called `core`, which is the Eclipse project for the core of ESN. The project depends on a JBoss EJB 3.0 libraries configuration reference called JBoss 4.2.0. Create a new JBoss 4x configuration for your current JBoss 4.2.0 installation using the JBossIDE plug-in and name it JBoss 4.2.0. Reference this from the project to resolve the dependency problem. == Deployment == Make sure MySQL Connector/J (`mysql-connector-java-5.0.6-bin.jar`) is in the path `server/default/lib` relative to your JBoss installation. Edit `server/default/deploy/mysql-ds.xml` to add a `local-tx-datasource` entry as follows. {{{ ESNCoreDS jdbc:mysql://localhost:3306/esncore com.mysql.jdbc.Driver esn_admin admin }}} Start MySQL server. Login to MySQL console as root and execute the following SQL. {{{ create database esncore; grant all on esncore.* to esn_admin identified by 'admin'; }}} On Linux, you may have to use `grant all on esncore.* to 'esn_admin'@'localhost' identified by 'admin';` instead of `grant all on esncore.* to esn_admin identified by 'admin';`. Edit the file `server/default/conf/login-config.xml` to add a new `application-policy` as follows. {{{ guest java:/ESNCoreDS SELECT passwordDigest FROM UserAuthentication WHERE userId=? SELECT role, 'Roles' FROM UserRole WHERE userId=? SHA-1 hex false }}} Deploy (copy to) `target/esn-core.ear` from the project to `server/default/deploy` relative to JBoss. While MySQL is still running, start up JBoss on the `default` server. JBoss should be running using Sun Java 1.5 JRE. == Contributing == Check in new code through SVN.