commit 80de230c8439ff52f2479dc2b3a24c6a5c25bc21
Author: Cherian Mathew <c.mathew@bgbm.org>
Date:   Wed Dec 10 17:01:00 2014 +0000

    updated manifest for deleted test dir
    removed unnecessary commit root entity methods in session  and session manager

diff --git a/.gitattributes b/.gitattributes
index 3cd7165b8..0bf3d8f7d 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -351,6 +351,7 @@ eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/sour
 eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmClientSessionException.java -text
 eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySession.java -text
 eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java -text
+eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySession.java -text
 eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManager.java -text
 eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ISessionEventListener.java -text
 eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySessionManager.java -text
diff --git a/eu.etaxonomy.taxeditor.cdmlib/.classpath b/eu.etaxonomy.taxeditor.cdmlib/.classpath
index 936f69db5..fa5110638 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/.classpath
+++ b/eu.etaxonomy.taxeditor.cdmlib/.classpath
@@ -2,10 +2,8 @@
 <classpath>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src/main/java"/>
-	<classpathentry kind="src" path="src/test/java"/>
-	<classpathentry kind="src" path="src/main/resources"/>
-	<classpathentry kind="src" path="src/test/resources"/>
+	<classpathentry including="**/*.java" kind="src" path="src/main/java"/>
+	<classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
 	<classpathentry exported="true" kind="lib" path="lib/activation-1.1.1.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/antlr-2.7.7.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/aopalliance-1.0.jar"/>
@@ -204,7 +202,7 @@
 	<classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.4.0-SNAPSHOT-sources.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.4.0-SNAPSHOT.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.4.0-SNAPSHOT-sources.jar"/>
-	<classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.4.0-SNAPSHOT.jar" />
+	<classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.4.0-SNAPSHOT.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.4.0-SNAPSHOT-sources.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.4.0-SNAPSHOT.jar"/>
 	<classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.4.0-SNAPSHOT-sources.jar"/>
diff --git a/eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF b/eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF
index cb24e554d..b769f00ef 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF
+++ b/eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF
@@ -314,6 +314,7 @@ Export-Package: com.google.api,
  org.joda.time.format;uses:="org.joda.time",
  org.joda.time.tz;uses:="org.joda.time",
  org.junit;uses:="org.hamcrest",
+ org.junit.runner,
  org.odftoolkit.odfdom,
  org.odftoolkit.odfdom.doc,
  org.odftoolkit.odfdom.doc.office,
diff --git a/eu.etaxonomy.taxeditor.cdmlib/build.properties b/eu.etaxonomy.taxeditor.cdmlib/build.properties
index 2180b5cf8..6998ff191 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/build.properties
+++ b/eu.etaxonomy.taxeditor.cdmlib/build.properties
@@ -209,7 +209,6 @@ bin.includes = META-INF/,\
 jars.compile.order = .
 output.. = bin/
 source.. = src/main/java/,\
-           src/main/resources/,\
-           src/test/java/
+           src/main/resources/
 src.includes = src/
 
diff --git a/eu.etaxonomy.taxeditor.cdmlib/pom.xml b/eu.etaxonomy.taxeditor.cdmlib/pom.xml
index 51ab1e367..e9dbfcec3 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/pom.xml
+++ b/eu.etaxonomy.taxeditor.cdmlib/pom.xml
@@ -1,106 +1,224 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <parent>
-    <groupId>eu.etaxonomy</groupId>
-    <artifactId>taxeditor-parent</artifactId>
-    <version>3.4.0-SNAPSHOT</version>
-  </parent>
-  <modelVersion>4.0.0</modelVersion>
-  <artifactId>eu.etaxonomy.taxeditor.cdmlib</artifactId>
-  <packaging>eclipse-plugin</packaging>
-  <name>CDM Library Dependencies Plugin</name>
-  <description>CDM Library and dependencies as a plugin</description>
-  <build>
-    <plugins>      
-      <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-dependency-plugin</artifactId>
-	<version>2.4</version>
-	<executions>
-	  <execution>
-	    <id>copy-dependencies</id>
-	    <phase>validate</phase>
-	    <goals>
-	      <goal>copy-dependencies</goal>
-	    </goals>
-	    <configuration>
-	      <excludeArtifactIds>junit,log4j,unitils</excludeArtifactIds>
-	      <outputDirectory>lib</outputDirectory>
-	      <overWriteReleases>true</overWriteReleases>
-	      <overWriteSnapshots>true</overWriteSnapshots>
-	      <excludeTransitive>true</excludeTransitive>	      
-	    </configuration>
-	  </execution>
-	  <execution>
-	    <id>copy-dependencies-sources</id>
-	    <phase>validate</phase>
-	    <goals>
-	      <goal>copy-dependencies</goal>
-	    </goals>
-	    <configuration>
-	      <classifier>sources</classifier>
-	      <excludeArtifactIds>junit,log4j,unitils</excludeArtifactIds>
-	      <outputDirectory>lib</outputDirectory>
-	      <overWriteReleases>true</overWriteReleases>
-	      <overWriteSnapshots>true</overWriteSnapshots>
-	      <excludeTransitive>true</excludeTransitive>
-	      <failOnMissingClassifierArtifact>false</failOnMissingClassifierArtifact>
-	    </configuration>
-	  </execution>
-	</executions>
-      </plugin>
-      <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-antrun-plugin</artifactId>
-	<version>1.7</version>
-	<executions>
-	  <execution>
-	    <id>remove-existing-jars</id>
-	    <phase>clean</phase>
-	    <goals>
-	      <goal>run</goal>
-	    </goals>
-	    <configuration>
-	      <target>
-		<echo>Remove all cdmlib jars</echo>
-		<delete>
-		  <fileset dir="./lib" includes="cdmlib-*"/>
-		</delete>
-	      </target>	
-	    </configuration>
-	  </execution>
-	  <execution>
-	    <id>update-snapshot-jar-names</id>
-	    <phase>validate</phase>
-	    <goals>
-	      <goal>run</goal>
-	    </goals>
-	    <configuration>	      
-	      <target>
-		<echo>Update cdmlib jars to SNAPSHOT when build with timestamp</echo>
-		<move todir="./lib">
-		  <fileset dir="./lib" />
-		  <mapper type="regexp"
-			  from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\.jar)" to="\1SNAPSHOT\2" />
-		</move>				  
-		<move todir="./lib">
-		  <fileset dir="./lib" />
-		  <mapper type="regexp"
-			  from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\-sources\.jar)" to="\1SNAPSHOT\2" />
-		</move>				  
-	      </target>	
-	    </configuration>
-	  </execution>
-	</executions>
-      </plugin>
-    </plugins>
-  </build>
-  <dependencies>
-    <dependency>
-      <groupId>identificationKeyAPI</groupId>
-      <artifactId>identificationKeyAPI</artifactId>
-      <version>1.0-SNAPSHOT</version>
-    </dependency>
+<project>
+
+	<parent>
+		<groupId>eu.etaxonomy</groupId>
+		<artifactId>taxeditor-parent</artifactId>
+		<version>3.4.0-SNAPSHOT</version>
+	</parent>
+	<modelVersion>4.0.0</modelVersion>
+	<artifactId>eu.etaxonomy.taxeditor.cdmlib</artifactId>
+	<packaging>eclipse-plugin</packaging>
+	<name>CDM Library Bundle</name>
+	<description>Cdm Library Plugin Taxonomic Editor</description>
+
+	<build>
+		<pluginManagement>
+			<plugins>
+				<plugin>
+					<groupId>org.apache.maven.plugins</groupId>
+					<artifactId>maven-surefire-plugin</artifactId>
+					<version>2.7</version>
+				</plugin>
+			</plugins>
+		</pluginManagement>
+		<plugins>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-dependency-plugin</artifactId>
+				<version>2.4</version>
+				<executions>
+					<execution>
+						<id>copy-dependencies</id>
+						<phase>validate</phase>
+						<goals>
+							<goal>copy-dependencies</goal>
+						</goals>
+						<configuration>
+							<excludeArtifactIds>
+								cdmlib-remote-webapp
+							</excludeArtifactIds>
+							<includeArtifactIds>
+								cdmlib-services,cdmlib-commons,cdmlib-persistence,cdmlib-ext,cdmlib-model,cdmlib-io,cdmlib-print,cdmlib-remote
+							</includeArtifactIds>
+							<outputDirectory>${basedir}/lib</outputDirectory>
+							<overWriteReleases>true</overWriteReleases>
+							<overWriteSnapshots>true</overWriteSnapshots>
+							<excludeTransitive>true</excludeTransitive>
+						</configuration>
+					</execution>
+					<execution>
+						<id>copy-dependency-war</id>
+						<phase>validate</phase>
+						<goals>
+							<goal>copy-dependencies</goal>
+						</goals>
+						<configuration>
+							<includeArtifactIds>
+								cdmlib-remote-webapp
+							</includeArtifactIds>
+							<outputDirectory>
+								${basedir}/src/main/resources/etc/jetty
+							</outputDirectory>
+							<overWriteReleases>true</overWriteReleases>
+							<overWriteSnapshots>true</overWriteSnapshots>
+							<excludeTransitive>true</excludeTransitive>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-antrun-plugin</artifactId>
+				<version>1.7</version>
+				<executions>
+					<execution>
+						<id>update-snapshot-jar-names</id>
+						<phase>validate</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<configuration>
+							<target>
+								<echo>Anonymizing war</echo>
+								<move todir="./src/main/resources/etc/jetty">
+									<fileset dir="./src/main/resources/etc/jetty" />
+									<mapper type="regexp"
+										from="(^cdmlib\-.*)\-[0-9]\.[0-9]\.[0-9]\-SNAPSHOT(\.war)" to="\1\2" />
+								</move>
+								<move todir="./src/main/resources/etc/jetty">
+									<fileset dir="./src/main/resources/etc/jetty" />
+									<mapper type="regexp"
+										from="(^cdmlib\-.*)\-[0-9]\.[0-9]\.[0-9]\-[0-9.-]+(\.war)" to="\1\2" />
+								</move>
+								<echo>Update cdmlib jars to SNAPSHOT when build with
+									timestamp
+								</echo>
+								<move todir="./lib">
+									<fileset dir="./lib" />
+									<mapper type="regexp"
+										from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\.jar)" to="\1SNAPSHOT\2" />
+								</move>
+								<move todir="./lib">
+									<fileset dir="./lib" />
+									<mapper type="regexp"
+										from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\-sources\.jar)"
+										to="\1SNAPSHOT\2" />
+								</move>
+							</target>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+	<profiles>
+		<profile>
+			<id>cleanCdmlibJars</id>
+			<build>
+				<plugins>
+					<plugin>
+						<artifactId>maven-clean-plugin</artifactId>
+						<version>2.3</version>
+						<configuration>
+							<filesets>
+								<fileset>
+									<directory>${basedir}/lib</directory>
+									<includes>
+										<include>cdmlib-*</include>
+									</includes>
+									<followSymlinks>false</followSymlinks>
+								</fileset>
+							</filesets>
+						</configuration>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+		<profile>
+			<id>cleanAllJars</id>
+			<build>
+				<plugins>
+					<plugin>
+						<artifactId>maven-clean-plugin</artifactId>
+						<version>2.3</version>
+						<configuration>
+							<filesets>
+								<fileset>
+									<directory>${basedir}/lib</directory>
+									<includes>
+										<include>*</include>
+									</includes>
+									<followSymlinks>false</followSymlinks>
+								</fileset>
+							</filesets>
+						</configuration>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+		<profile>
+			<id>copyAllJars</id>
+			<build>
+				<plugins>
+					<plugin>
+						<groupId>org.apache.maven.plugins</groupId>
+						<artifactId>maven-dependency-plugin</artifactId>
+						<version>2.4</version>
+						<executions>
+							<execution>
+								<id>copy-all-dependencies</id>
+								<phase>validate</phase>
+								<goals>
+									<goal>copy-dependencies</goal>
+								</goals>
+								<configuration>
+									<excludeArtifactIds>
+										cdmlib-remote-webapp
+									</excludeArtifactIds>
+									<outputDirectory>${basedir}/lib</outputDirectory>
+									<overWriteReleases>true</overWriteReleases>
+									<overWriteSnapshots>true</overWriteSnapshots>
+									<excludeTransitive>true</excludeTransitive>
+								</configuration>
+							</execution>
+						</executions>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+	</profiles>
+	<repositories>
+		<repository>
+			<id>SpringSource Enterprise Bundle Repository - External Bundle
+				Milestones
+			</id>
+			<url>http://repository.springsource.com/maven/bundles/milestone
+			</url>
+		</repository>
+		<repository>
+			<id>SpringSource Enterprise Bundle Repository - SpringSource
+				Bundle
+				Releases
+			</id>
+			<url>http://repository.springsource.com/maven/bundles/release
+			</url>
+		</repository>
+		<repository>
+			<id>SpringSource Enterprise Bundle Repository - External Bundle
+				Releases
+			</id>
+			<url>http://repository.springsource.com/maven/bundles/external
+			</url>
+		</repository>
+	</repositories>
+	<dependencies>
+		<dependency>
+			<groupId>eu.etaxonomy</groupId>
+			<artifactId>cdmlib-remote-webapp</artifactId>
+			<version>${cdmlib.version}</version>
+			<type>war</type>
+		</dependency>
     <dependency>
       <groupId>eu.etaxonomy</groupId>
       <artifactId>cdmlib-commons</artifactId>
@@ -141,20 +259,337 @@
       <artifactId>cdmlib-ext</artifactId>
       <version>${cdmlib.version}</version>
     </dependency>
-   	<dependency>
-      <groupId>org.aspectj</groupId>
-      <artifactId>aspectjrt</artifactId>
-	  <version>1.7.1</version>
-	</dependency>
-	  <dependency>
-	  <groupId>org.aspectj</groupId>
-	  <artifactId>aspectjweaver</artifactId>
-	  <version>1.7.1</version>
-	 </dependency>
-	 
-    <!--  for ikey-plus 
-	 TODO this should not be needed but the utils class contained  in this jar 
-	 seems to be loaded as bean by spring
-    -->
-  </dependencies>
-</project>
+
+		<dependency>
+			<groupId>org.unitils</groupId>
+			<artifactId>unitils-core</artifactId>
+			<version>3.4.2</version>
+		</dependency>
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-server</artifactId> -->
+		<!-- <version>9.1.3.v20140225</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-util</artifactId> -->
+		<!-- <version>9.1.3.v20140225</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-xml</artifactId> -->
+		<!-- <version>9.1.3.v20140225</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-servlet</artifactId> -->
+		<!-- <version>9.1.3.v20140225</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-webapp</artifactId> -->
+		<!-- <version>9.1.3.v20140225</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-security</artifactId> -->
+		<!-- <version>9.1.3.v20140225</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-http</artifactId> -->
+		<!-- <version>${jetty.version}</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>org.eclipse.jetty</groupId> -->
+		<!-- <artifactId>jetty-io</artifactId> -->
+		<!-- <version>${jetty.version}</version> -->
+		<!-- </dependency> -->
+		<!-- <dependency> -->
+		<!-- <groupId>javax.servlet</groupId> -->
+		<!-- <artifactId>javax.servlet-api</artifactId> -->
+		<!-- <version>3.1.0</version> -->
+		<!-- </dependency> -->
+
+		<!-- <dependency> -->
+		<!-- <groupId>javax.servlet</groupId> -->
+		<!-- <artifactId>jsp-api</artifactId> -->
+		<!-- <version>2.0</version> -->
+		<!-- </dependency> -->
+
+		<dependency>
+			<groupId>net.sf.ehcache</groupId>
+			<artifactId>ehcache-core</artifactId>
+			<version>2.4.3</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hibernate</groupId>
+			<artifactId>hibernate-core</artifactId>
+			<version>4.1.10.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hibernate.common</groupId>
+			<artifactId>hibernate-commons-annotations</artifactId>
+			<version>4.0.1.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hibernate</groupId>
+			<artifactId>hibernate-search-engine</artifactId>
+			<version>4.2.0.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hibernate.javax.persistence</groupId>
+			<artifactId>hibernate-jpa-2.0-api</artifactId>
+			<version>1.0.1.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hibernate</groupId>
+			<artifactId>hibernate-envers</artifactId>
+			<version>4.1.10.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hibernate</groupId>
+			<artifactId>hibernate-entitymanager</artifactId>
+			<version>4.1.10.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>dom4j</groupId>
+			<artifactId>dom4j</artifactId>
+			<version>1.6</version>
+		</dependency>
+		<dependency>
+			<groupId>org.jadira.usertype</groupId>
+			<artifactId>usertype.jodatime</artifactId>
+			<version>2.0.1</version>
+		</dependency>
+		<dependency>
+			<groupId>org.jadira.usertype</groupId>
+			<artifactId>usertype.spi</artifactId>
+			<version>2.0.1</version>
+		</dependency>
+
+		<dependency>
+			<groupId>junit</groupId>
+			<artifactId>junit</artifactId>
+			<version>4.11</version>
+			<scope>test</scope>
+		</dependency>
+		<dependency>
+			<groupId>log4j</groupId>
+			<artifactId>log4j</artifactId>
+			<version>1.2.17</version>
+		</dependency>
+		<dependency>
+			<groupId>org.jdom</groupId>
+			<artifactId>jdom</artifactId>
+			<version>1.1.3</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.context</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.context.support</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.aspects</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.test</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.beans</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.transaction</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.web</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.core</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.aop</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.expression</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.orm</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework</groupId>
+			<artifactId>org.springframework.jdbc</artifactId>
+			<version>3.2.2.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.security</groupId>
+			<artifactId>spring-security-core</artifactId>
+			<version>3.1.3.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.security</groupId>
+			<artifactId>spring-security-config</artifactId>
+			<version>3.1.3.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.security</groupId>
+			<artifactId>spring-security-remoting</artifactId>
+			<version>3.1.3.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.jboss.logging</groupId>
+			<artifactId>jboss-logging</artifactId>
+			<version>3.1.3.GA</version>
+		</dependency>
+		<dependency>
+			<groupId>org.hamcrest</groupId>
+			<artifactId>hamcrest-core</artifactId>
+			<version>1.3</version>
+		</dependency>
+		<dependency>
+			<groupId>com.mchange</groupId>
+			<artifactId>c3p0</artifactId>
+			<version>0.9.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.jboss.spec.javax.transaction</groupId>
+			<artifactId>jboss-transaction-api_1.1_spec</artifactId>
+			<version>1.0.0.Final</version>
+		</dependency>
+		<dependency>
+			<groupId>org.aspectj</groupId>
+			<artifactId>aspectjrt</artifactId>
+			<version>1.7.1</version>
+		</dependency>
+		<dependency>
+			<groupId>commons-logging</groupId>
+			<artifactId>commons-logging</artifactId>
+			<version>1.1.1</version>
+		</dependency>
+		<dependency>
+			<groupId>commons-lang</groupId>
+			<artifactId>commons-lang</artifactId>
+			<version>2.6</version>
+		</dependency>
+		<dependency>
+			<groupId>aopalliance</groupId>
+			<artifactId>aopalliance</artifactId>
+			<version>1.0</version>
+		</dependency>
+		<dependency>
+			<groupId>joda-time</groupId>
+			<artifactId>joda-time</artifactId>
+			<version>2.1</version>
+		</dependency>
+		<dependency>
+			<groupId>com.ibm.lsid</groupId>
+			<artifactId>lsid-client</artifactId>
+			<version>1.1.2</version>
+		</dependency>
+		<dependency>
+			<groupId>com.ibm.lsid</groupId>
+			<artifactId>lsid-server</artifactId>
+			<version>1.1.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.lucene</groupId>
+			<artifactId>lucene-core</artifactId>
+			<version>3.6.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.slf4j</groupId>
+			<artifactId>slf4j-api</artifactId>
+			<version>1.7.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.javassist</groupId>
+			<artifactId>javassist</artifactId>
+			<version>3.17.1-GA</version>
+		</dependency>
+		<dependency>
+			<groupId>au.com.bytecode</groupId>
+			<artifactId>opencsv</artifactId>
+			<version>2.4</version>
+		</dependency>
+
+
+		<!-- For Unit Tests Start -->
+		<dependency>
+			<groupId>org.unitils</groupId>
+			<artifactId>unitils-spring</artifactId>
+			<version>3.4.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.unitils</groupId>
+			<artifactId>unitils-database</artifactId>
+			<version>3.4.2</version>
+		</dependency>
+		<dependency>
+			<groupId>commons-dbcp</groupId>
+			<artifactId>commons-dbcp</artifactId>
+			<version>1.4</version>
+		</dependency>
+		<dependency>
+			<groupId>commons-pool</groupId>
+			<artifactId>commons-pool</artifactId>
+			<version>1.5.4</version>
+		</dependency>
+		<dependency>
+			<groupId>org.unitils</groupId>
+			<artifactId>unitils-dbmaintainer</artifactId>
+			<version>3.4.2</version>
+		</dependency>
+		<dependency>
+			<groupId>com.h2database</groupId>
+			<artifactId>h2</artifactId>
+			<version>1.4.181</version>
+		</dependency>
+		<dependency>
+			<groupId>org.unitils</groupId>
+			<artifactId>unitils-dbunit</artifactId>
+			<version>3.4.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.dbunit</groupId>
+			<artifactId>dbunit</artifactId>
+			<version>2.4.9</version>
+		</dependency>
+		<!-- For Unit Tests End -->
+
+		<!-- For Hibernate Mapping Start -->
+		<dependency>
+			<groupId>wsdl4j</groupId>
+			<artifactId>wsdl4j</artifactId>
+			<version>1.6.3</version>
+		</dependency>
+		<dependency>
+			<groupId>javax.validation</groupId>
+			<artifactId>validation-api</artifactId>
+			<version>1.1.0.Final</version>
+		</dependency>
+		<!-- For Hibernate Mapping End -->
+	</dependencies>
+</project>
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/cache/CdmTransientEntityCacher.java b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/cache/CdmTransientEntityCacher.java
index dc349a38a..8dd40f0f8 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/cache/CdmTransientEntityCacher.java
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/cache/CdmTransientEntityCacher.java
@@ -215,8 +215,7 @@ public class CdmTransientEntityCacher  {
 			loadedCollection = cachedCollection;
 		} else {
 			loadedCollection = load(collection, null);
-		}
-		cdmEntitySessionManager.addRootEntities(loadedCollection);
+		}		
 		return loadedCollection;
 	}
 	
@@ -264,8 +263,7 @@ public class CdmTransientEntityCacher  {
 			loadedCdmBase =  cb;
 		} else {
 			loadedCdmBase = load(cdmEntity);
-		}
-		cdmEntitySessionManager.addRootEntity(loadedCdmBase);
+		}		
 		return loadedCdmBase;
 		
 	}
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySession.java b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySession.java
index c27cdd8c2..d51698857 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySession.java
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySession.java
@@ -29,16 +29,14 @@ import eu.etaxonomy.cdm.model.common.OriginalSourceBase;
  *
  */
 
-public class CdmEntitySession<T extends CdmBase>  {
+public class CdmEntitySession<T extends CdmBase> implements ICdmEntitySession<T>  {
 
     
 	private CdmEntitySessionManager cdmEntitySessionManager;
 	
 	private ISessionEventListener sessionOwner;
 		
-	private CdmTransientEntityCacher cdmTransientEntityCacher;
-	
-	private IService<T> service;
+	private CdmTransientEntityCacher cdmTransientEntityCacher;	
 	
 	private List<T> rootEntities;
 	
@@ -49,33 +47,38 @@ public class CdmEntitySession<T extends CdmBase>  {
 		
 		cdmEntitySessionManager.addToOwnerSessionMap(sessionOwner, this);
 	}
+
 	
-	CdmEntitySession(ISessionEventListener sessionOwner, IService<T> service, CdmEntitySessionManager cdmEntitySessionManager) {
-		this.sessionOwner = sessionOwner;
-		this.cdmTransientEntityCacher = new CdmTransientEntityCacher(sessionOwner, cdmEntitySessionManager);
-		this.rootEntities = new ArrayList<T>();
-		this.service = service;
-		cdmEntitySessionManager.addToOwnerSessionMap(sessionOwner, this);
-	}
-//	
-//	public CdmTransientEntityCacher getCdmTransientEntityCacher() {
-//		return cdmTransientEntityCacher;
-//	}
-	
+	/* (non-Javadoc)
+	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySession#load(T)
+	 */
+	@Override
 	public <T extends Object> T load(T obj) {		
 		return (T) cdmTransientEntityCacher.load(obj,true);
 	}
 
 
+	/* (non-Javadoc)
+	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySession#load(T)
+	 */
+	@Override
 	public <T extends CdmBase> T load(T cdmBase) {		
 		return (T)cdmTransientEntityCacher.load(cdmBase,true);
 	}
 
+	/* (non-Javadoc)
+	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySession#load(java.util.Collection)
+	 */
+	@Override
 	public <T extends CdmBase> Collection<T> load(Collection<T> cdmBaseList) {
 		
 		return cdmTransientEntityCacher.load(cdmBaseList,true);
 	}
 	
+	/* (non-Javadoc)
+	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySession#setEntitiesAsLatest()
+	 */
+	@Override
 	public void setEntitiesAsLatest() {
 		List<CdmBase> entities = cdmTransientEntityCacher.getAllEntities();
 		for(CdmBase entity : entities) {
@@ -83,26 +86,11 @@ public class CdmEntitySession<T extends CdmBase>  {
 		}
 	}
 	
-	public  void addRootEntity(T cdmBase) {
-		rootEntities.add(cdmBase);
-	}
-	
-	public void addRootEntities(Collection<T> objectList) {
-		for(T obj : objectList) {			
-			addRootEntity(obj);			
-		}
-	}
-	
-	public  void commit() {
-		for(T rootEntity : rootEntities) {			
-			service.merge( rootEntity);
-		}
-	}
-	
-	public void commit(IService<T> service,T cdmBase) {
-		service.merge(cdmBase);
-	}
 	
+	/* (non-Javadoc)
+	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySession#dispose()
+	 */
+	@Override
 	public void dispose() {
 		rootEntities.clear();
 		cdmTransientEntityCacher.dispose();
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java
index 5406b4ebc..74e9ac7f3 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java
@@ -11,18 +11,12 @@ package eu.etaxonomy.taxeditor.session;
 
 import java.util.Collection;
 import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
 import java.util.Map;
 
 import org.apache.log4j.Logger;
 import org.springframework.stereotype.Component;
 
-import eu.etaxonomy.cdm.api.cache.CachedCommonServiceImpl;
-import eu.etaxonomy.cdm.api.cache.CdmClientCacheException;
-import eu.etaxonomy.cdm.api.cache.CdmClientCachingTest;
 import eu.etaxonomy.cdm.api.cache.CdmTransientEntityCacher;
-import eu.etaxonomy.cdm.api.service.IService;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 
 /**
@@ -43,13 +37,14 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
     private CdmTransientEntityCacher latestEntityCacher =
     		new CdmTransientEntityCacher("latestEntityCacher", this);
     
-    private CdmEntitySession activeSession;
+    private ICdmEntitySession activeSession;
+
     
     /* (non-Javadoc)
 	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#getActiveSession()
 	 */
     @Override
-	public CdmEntitySession getActiveSession() {
+	public ICdmEntitySession getActiveSession() {
 		return activeSession;
 	}
     
@@ -57,19 +52,19 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#getSession(eu.etaxonomy.taxeditor.session.ISessionEventListener)
 	 */
     @Override
-	public CdmEntitySession getSession(ISessionEventListener sessionOwner) {
+	public ICdmEntitySession getSession(ISessionEventListener sessionOwner) {
     	if(sessionOwner == null) {
     		return null;
     	}
     	
-		CdmEntitySession session = ownerSessionMap.get(sessionOwner);
+		ICdmEntitySession session = ownerSessionMap.get(sessionOwner);
 		if(session == null) {
 			logger.info("No session exists for session owner with class : " + sessionOwner.getClass().getName());			
 		}
 		return session;
 	}
 	
-	private CdmEntitySession newSession(ISessionEventListener sessionOwner, boolean setAsActive) {
+	private ICdmEntitySession newSession(ISessionEventListener sessionOwner, boolean setAsActive) {
 		CdmEntitySession session = ownerSessionMap.get(sessionOwner);
 		if(session == null) {		
 			session = new CdmEntitySession(sessionOwner, this);
@@ -87,7 +82,11 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	 */
 	@Override
 	public void bind(ISessionEventListener sessionOwner) {
-		CdmEntitySession session  = ownerSessionMap.get(sessionOwner);
+		if(sessionOwner == null) {
+			activeSession = null;
+			return;
+		}
+		ICdmEntitySession session  = ownerSessionMap.get(sessionOwner);
 		if(session == null) {
 			session = newSession(sessionOwner,true);
 		}
@@ -99,7 +98,7 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	 */
 	@Override
 	public <T extends Object> T load(ISessionEventListener sessionOwner, T obj) {
-		CdmEntitySession session = newSession(sessionOwner,true);
+		ICdmEntitySession session = newSession(sessionOwner,true);		
 		return (T) session.load(obj);
 	}
 	
@@ -109,9 +108,10 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	@Override
 	public <T extends Object> T load(T obj) {
 		if(activeSession == null) {
-			throw new CdmClientSessionException("No active session has been bound, cannot load cdm entity");			
+			return obj;
+		} else {
+			return (T)activeSession.load(obj);
 		}
-		return (T)activeSession.load(obj);
 	}
 
 	/* (non-Javadoc)
@@ -119,7 +119,7 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	 */
 	@Override
 	public <T extends CdmBase> T load(ISessionEventListener sessionOwner, T cdmBase) {
-		CdmEntitySession session = newSession(sessionOwner,true);
+		ICdmEntitySession session = newSession(sessionOwner,true);
 		return (T)session.load(cdmBase);
 	}
 	
@@ -129,7 +129,7 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	@Override
 	public <T extends CdmBase> T load(T cdmBase) {
 		if(activeSession == null) {
-			throw new CdmClientSessionException("No active session has been bound, cannot load cdm entity");			
+			return cdmBase;
 		}
 		return (T)activeSession.load(cdmBase);
 	}
@@ -140,7 +140,7 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	 */
 	@Override
 	public <T extends CdmBase> Collection<T> load(ISessionEventListener sessionOwner, Collection<T> cdmBaseList) {
-		CdmEntitySession session = newSession(sessionOwner,true);
+		ICdmEntitySession session = newSession(sessionOwner,true);
 		return session.load(cdmBaseList);
 	}
 	
@@ -151,71 +151,18 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 	@Override
 	public <T extends CdmBase> Collection<T> load(Collection<T> cdmBaseList) {
 		if(activeSession == null) {
-			throw new CdmClientSessionException("No active session has been bound, cannot load cdm entity list");			
+			return cdmBaseList;
 		}
 		return activeSession.load(cdmBaseList);
 	}
-	
-	/* (non-Javadoc)
-	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#addRootEntity(T)
-	 */
-	@Override
-	@SuppressWarnings("unchecked")
-	public <T extends CdmBase> void addRootEntity(T cdmBase) {
-		if(activeSession == null) {
-			throw new CdmClientSessionException("No active session has been bound, cannot add root cdm entity");			
-		}
-		activeSession.addRootEntity(cdmBase);
-	}
-	
-	/* (non-Javadoc)
-	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#addRootEntities(java.util.Collection)
-	 */
-	@Override
-	@SuppressWarnings("unchecked")
-	public <T extends Object> void addRootEntities(Collection<T> cdmBaseList) {
-		if(activeSession == null) {
-			throw new CdmClientSessionException("No active session has been bound, cannot add root cdm entity");			
-		}
-		activeSession.addRootEntities(cdmBaseList);
-	}
 
-//	/* (non-Javadoc)
-//	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#commit()
-//	 */
-//	@Override
-//	public void commit() {
-//		if(activeSession == null) {
-//			logger.info("No active session has been bound, nothing to commit");
-//		}
-//		activeSession.commit();
-//	}
-//
-//	
-//	/* (non-Javadoc)
-//	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#commit(eu.etaxonomy.taxeditor.session.ISessionEventListener)
-//	 */
-//	@Override
-//	public void commit(ISessionEventListener sessionOwner) {
-//		if(sessionOwner == null) {
-//    		return ;
-//    	}
-//    	
-//		CdmEntitySession session = ownerSessionMap.get(sessionOwner);
-//		if(session == null) {
-//			logger.info("No session exists for session owner with class : " + sessionOwner.getClass().getName());			
-//		} else {
-//			session.commit();
-//		}		
-//	}
-		
 	
 	/* (non-Javadoc)
 	 * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#dispose(eu.etaxonomy.taxeditor.session.ISessionEventListener)
 	 */
 	@Override
 	public void dispose(ISessionEventListener owner) {
-		CdmEntitySession session = ownerSessionMap.get(owner);
+		ICdmEntitySession session = ownerSessionMap.get(owner);
 		if(session == null) {
 			logger.info("No Session connected to owner, nothing to dispose");
 			return;
@@ -227,25 +174,13 @@ public class CdmEntitySessionManager implements ICdmEntitySessionManager {
 		ownerSessionMap.put(owner, session);
 	}
 	
-//	void addToLinkedEntities(T cdmBase) {
-//		if(cdmBase == null) {
-//			return;
-//		}
-//		String id = CdmTransientEntityCacher.generateId(cdmBase);
-//		HashSet<CdmClientBase<T>> linkedEntities = entitiesMap.get(id);
-//		if(linkedEntities == null) {
-//			linkedEntities = new HashSet<CdmClientBase<T>>();			
-//		}
-//		linkedEntities.add(cdmBase);
-//	}
-	 	
 
 	void setEntityAsLatest(CdmBase cdmBase) {		
 		latestEntityCacher.put(cdmBase);
 	}
 	
 	void promoteSessionEntitiesToLatest(ISessionEventListener owner) {
-		CdmEntitySession session = ownerSessionMap.get(owner);
+		ICdmEntitySession session = ownerSessionMap.get(owner);
 		if(session != null) {
 			session.setEntitiesAsLatest();
 		}
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySession.java b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySession.java
new file mode 100644
index 000000000..140d6a192
--- /dev/null
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySession.java
@@ -0,0 +1,21 @@
+package eu.etaxonomy.taxeditor.session;
+
+import java.util.Collection;
+
+import eu.etaxonomy.cdm.api.service.IService;
+import eu.etaxonomy.cdm.model.common.CdmBase;
+
+public interface ICdmEntitySession<T extends CdmBase> {
+
+	public abstract <T extends Object> T load(T obj);
+
+	public abstract <T extends CdmBase> T load(T cdmBase);
+
+	public abstract <T extends CdmBase> Collection<T> load(
+			Collection<T> cdmBaseList);
+
+	public abstract void setEntitiesAsLatest();
+
+	public abstract void dispose();
+
+}
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManager.java b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManager.java
index 00e51bfb5..2dc43a590 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManager.java
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManager.java
@@ -7,9 +7,9 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
 
 public interface ICdmEntitySessionManager {
 
-	public abstract CdmEntitySession getActiveSession();
+	public abstract ICdmEntitySession getActiveSession();
 
-	public abstract CdmEntitySession getSession(
+	public abstract ICdmEntitySession getSession(
 			ISessionEventListener sessionOwner);
 
 	public abstract void bind(ISessionEventListener sessionOwner);
@@ -30,22 +30,25 @@ public interface ICdmEntitySessionManager {
 	public abstract <T extends CdmBase> Collection<T> load(
 			Collection<T> cdmBaseList);
 
-	@SuppressWarnings("unchecked")
-	public abstract <T extends CdmBase> void addRootEntity(T cdmBase);
-
-	@SuppressWarnings("unchecked")
-	public abstract <T extends Object> void addRootEntities(
-			Collection<T> cdmBaseList);
-
+	public abstract void dispose(ISessionEventListener owner);
+	
 	//FIXME:Remoting would be nice to have these methods working,
 	//      but they can only be useful if we can 'intelligently'
 	//      get from a model class to the correspoding service class	
+	
+//	@SuppressWarnings("unchecked")
+//	public abstract <T extends CdmBase> void addRootEntity(T cdmBase);
+//
+//	@SuppressWarnings("unchecked")
+//	public abstract <T extends Object> void addRootEntities(
+//			Collection<T> cdmBaseList);
+
 //	public abstract void commit();
 //
 //	public abstract void commit(ISessionEventListener sessionOwner);
 //
 //	public abstract void commit(IService service, CdmBase cdmBase);
 
-	public abstract void dispose(ISessionEventListener owner);
+
 
 }
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySessionManager.java b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySessionManager.java
index 4e6e5291f..0a6fcaf21 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySessionManager.java
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySessionManager.java
@@ -6,7 +6,7 @@ import org.springframework.stereotype.Component;
 
 import eu.etaxonomy.cdm.api.service.IService;
 import eu.etaxonomy.cdm.model.common.CdmBase;
-import eu.etaxonomy.taxeditor.session.CdmEntitySession;
+import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
 import eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager;
 import eu.etaxonomy.taxeditor.session.ISessionEventListener;
 
@@ -14,12 +14,12 @@ import eu.etaxonomy.taxeditor.session.ISessionEventListener;
 public class MockCdmEntitySessionManager implements ICdmEntitySessionManager {
 
 	@Override
-	public CdmEntitySession getActiveSession() {		
+	public ICdmEntitySession getActiveSession() {		
 		return null;
 	}
 
 	@Override
-	public CdmEntitySession getSession(ISessionEventListener sessionOwner) {		
+	public ICdmEntitySession getSession(ISessionEventListener sessionOwner) {		
 		return null;
 	}
 
@@ -58,30 +58,6 @@ public class MockCdmEntitySessionManager implements ICdmEntitySessionManager {
 		return cdmBaseList;
 	}
 
-	@Override
-	public <T extends CdmBase> void addRootEntity(T cdmBase) {
-		
-	}
-
-	@Override
-	public <T> void addRootEntities(Collection<T> cdmBaseList) {
-		
-	}
-
-//	@Override
-//	public void commit() {
-//		
-//	}
-//
-//	@Override
-//	public void commit(ISessionEventListener sessionOwner) {
-//		
-//	}
-//
-//	@Override
-//	public void commit(IService service, CdmBase cdmBase) {
-//		
-//	}
 
 	@Override
 	public void dispose(ISessionEventListener owner) {
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/cdmlib-ehcache.xml b/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/cdmlib-ehcache.xml
index 7ab604c4d..6f2cc9388 100644
--- a/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/cdmlib-ehcache.xml
+++ b/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/cdmlib-ehcache.xml
@@ -1,6 +1,6 @@
 <ehcache name="cdmlibModelCacheManager">
 	<diskStore path="ehcache.disk.store.dir/cdmlib" />
-	<cache name="cdmModelGetMethodsCache" maxElementsInMemory="0" maxElementsOnDisk="0" eternal="true"
+	<cache name="cdmModelGetMethodsCache" maxElementsInMemory="1" maxElementsOnDisk="0" eternal="true"
 		overflowToDisk="true" diskPersistent="true" memoryStoreEvictionPolicy="LRU">
 	</cache>
 </ehcache>
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/cdmlib-remote-webapp.war b/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/cdmlib-remote-webapp.war
index 7ae52f244..c78919662 100644
Binary files a/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/cdmlib-remote-webapp.war and b/eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/cdmlib-remote-webapp.war differ
