Developers Getting Started With i2b2
Space shortcuts
Space Tools

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Step 6: Configure the data sources for the Workplace Cell

The Workplace cell needs to communicate with your i2b2 database and in order to do this it needs to know where the tables for the workdata and hivedata reside. Therefore the sixth and final step in the cell configuration process is to configure the data sources for the Workplace Cell. This information is configured in the work-ds.xml file.


Things to keep in mind when configuring your datasources:


  • The workdata and hivedata tables were created during the chapter on Data Installation.


  • The WorkplaceDemoDS points to the data source for your workdata tables.
    • The <user-name> and <password> need to match the database user you set up for your workdata. In the i2b2 demo database this is i2b2workdata and demouser.


  • The WorkplaceBootStrapDS points to the data source for your WORK_DB_LOOKUP table which is a hivedata table.
    • The <user-name> and <password> need to match the database user you set up for your hivedata. In the i2b2 demo database this is i2b2hive and demouser.


  • The <connection_url> needs to have the following:
    • The correct JDBC information for your type of database.
    • The correct location of the database containing your workdata or hivedata tables. (These may or may not reside in the same location)


  • Both the <driver-class> and <driver> need to accurately reflect the type of database you are connecting to.



Steps to configure data sources


The following steps define how to configure your data sources for the Workplace Cell. These steps include example configurations for Oracle, PostreSQL and SQL Server.


indent
Level1

1. The work-ds.xml file is located in the following directory:


indent
Level3

YOUR_I2B2_SRC_DIR\edu.harvard.i2b2.workplace\etc\jboss


indent
Level1

2. Open the work-ds.xml file to configure your data sources. (see examples shown below)



Oracle Database Configuration


Code Block
xml
xml
<datasource jta="false" jndi-name="java:/WorkplaceBootStrapDS"
		pool-name="WorkplaceBootStrapDS" enabled="true" use-ccm="false">
	<connection-url>jdbc:oracle:thin:@localhost:1521:xe</connection-url>
	<driver-class>oracle.jdbc.OracleDriver</driver-class>
	<driver>ojdbc6.jar</driver>
	<security>
		<user-name>i2b2hive</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<validate-on-match>false</validate-on-match>
		<background-validation>false</background-validation>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>
<datasource jta="false" jndi-name="java:/WorkplaceDemoDS"
	pool-name="WorkplaceDemoDS" enabled="true" use-ccm="false">
	<connection-url>jdbc:oracle:thin:@localhost:1521:XE</connection-url>
	<driver-class>oracle.jdbc.OracleDriver</driver-class>
	<driver>ojdbc6.jar</driver>
	<security>
		<user-name>i2b2workdata</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<validate-on-match>false</validate-on-match>
		<background-validation>false</background-validation>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>



PostgreSQL Database Configuration


Code Block
xml
xml
<datasource jta="false" jndi-name="java:/WorkplaceBootStrapDS"
		pool-name="WorkplaceBootStrapDS" enabled="true" use-ccm="false">
	<connection-url>jdbc:postgresql://localhost:5432/i2b2</connection-url>
	<driver-class>org.postgresql.Driver</driver-class>
	<driver>postgresql-9.2-1002.jdbc4.jar</driver>
	<security>
		<user-name>i2b2hive</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<validate-on-match>false</validate-on-match>
		<background-validation>false</background-validation>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>
<datasource jta="false" jndi-name="java:/WorkplaceDemoDS"
	pool-name="WorkplaceDemoDS" enabled="true" use-ccm="false">
	<connection-url>jdbc:postgresql://localhost:5432/i2b2</connection-url>
	<driver-class>org.postgresql.Driver</driver-class>
	<driver>postgresql-9.2-1002.jdbc4.jar</driver>
	<security>
		<user-name>i2b2workdata</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<validate-on-match>false</validate-on-match>
		<background-validation>false</background-validation>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>



SQL Server Database Configuration


Code Block
xml
xml
<datasource jta="false" jndi-name="java:/WorkplaceBootStrapDS"
		pool-name="WorkplaceBootStrapDS" enabled="true" use-ccm="false">
	<connection-url>jdbc:sqlserver://localhost:1433</connection-url>
	<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
	<driver>sqljdbc4.jar</driver>
	<security>
		<user-name>i2b2hive</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"></valid-connection-checker>
		<validate-on-match>false</validate-on-match>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>
<datasource jta="false" jndi-name="java:/WorkplaceDemoDS"
	pool-name="WorkplaceDemoDS" enabled="true" use-ccm="false">
	<connection-url>jdbc:sqlserver://localhost:1433</connection-url>
	<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
	<driver>sqljdbc4.jar</driver>
	<security>
		<user-name>i2b2workdata</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"></valid-connection-checker>
		<validate-on-match>false</validate-on-match>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>



indent
Level1

3. If your environment has multiple projects pointing to different data sources then copy the <datasource> section for each project data source.


indent
Level1

4. Update the jndi-name and pool-name to reflect the name of the second project .


indent
Level3

Example:   A second project called Demo2 would have the following entry:


Second Data Source Configuration


Code Block
xml
xml
<datasource jta="false" jndi-name="java:/WorkplaceDemo2DS"
	pool-name="WorkplaceDemo2DS" enabled="true" use-ccm="false">
	<connection-url>jdbc:oracle:thin:@localhost:1521:xe</connection-url>
	<driver-class>oracle.jdbc.OracleDriver</driver-class>
	<driver>ojdbc6.jar</driver>
	<security>
		<user-name>i2b2workdata</user-name>
		<password>demouser</password>
	</security>
	<validation>
		<validate-on-match>false</validate-on-match>
		<background-validation>false</background-validation>
	</validation>
	<statement>
		<share-prepared-statements>false</share-prepared-statements>
	</statement>
</datasource>



Info
titleNote

The above example is for an Oracle database. If your database is SQL Server or PostgreSQL then you will need to copy the <datasource> section for your type database connection. Do not use this one as it will not work.



indent
Level1

5. Save the changes and close the file.