diff --git a/core/src/main/java/de/ids_mannheim/korap/config/KustvaktConfiguration.java b/core/src/main/java/de/ids_mannheim/korap/config/KustvaktConfiguration.java
index ae25ae1..7c3a1cf 100644
--- a/core/src/main/java/de/ids_mannheim/korap/config/KustvaktConfiguration.java
+++ b/core/src/main/java/de/ids_mannheim/korap/config/KustvaktConfiguration.java
@@ -88,6 +88,8 @@
     private Pattern freeLicensePattern;
     private Pattern allLicensePattern;
     
+    private String baseURL;
+    
     
     // deprec?!
     private final BACKENDS DEFAULT_ENGINE = BACKENDS.LUCENE;
@@ -108,6 +110,7 @@
      */
     protected Properties load (Properties properties)
             throws IOException {
+        baseURL = properties.getProperty("kustvakt.base.url", "/api/*");
         maxhits = new Integer(properties.getProperty("maxhits", "50000"));
         returnhits = new Integer(properties.getProperty("returnhits", "50000"));
         indexDir = properties.getProperty("krill.indexDir", "");
diff --git a/core/src/main/java/de/ids_mannheim/korap/web/KustvaktBaseServer.java b/core/src/main/java/de/ids_mannheim/korap/web/KustvaktBaseServer.java
index 92be0ef..7ad0500 100644
--- a/core/src/main/java/de/ids_mannheim/korap/web/KustvaktBaseServer.java
+++ b/core/src/main/java/de/ids_mannheim/korap/web/KustvaktBaseServer.java
@@ -84,7 +84,7 @@
         servletHolder.setInitParameter("com.sun.jersey.config.property.packages", 
                 rootPackages);
         servletHolder.setInitOrder(1);
-        contextHandler.addServlet(servletHolder, "/api/*");
+        contextHandler.addServlet(servletHolder, config.getBaseURL());
         
         SocketConnector connector = new SocketConnector();
         connector.setPort(kargs.port);
diff --git a/full/pom.xml b/full/pom.xml
index 8efeb30..3193ee4 100644
--- a/full/pom.xml
+++ b/full/pom.xml
@@ -107,7 +107,7 @@
 							<goal>shade</goal>
 						</goals>
 						<configuration>
-							<finalName>Kustvakt-${project.version}-full</finalName>
+							<finalName>Kustvakt-full-${project.version}</finalName>
 							<transformers>
 								<transformer
 									implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
diff --git a/full/src/main/resources/default-config.xml b/full/src/main/resources/default-config.xml
index 33e19a7..903521c 100644
--- a/full/src/main/resources/default-config.xml
+++ b/full/src/main/resources/default-config.xml
@@ -42,8 +42,8 @@
 		<property name="locations">
 			<array>
 				<value>classpath:jdbc.properties</value>
+				<value>file:./jdbc.properties</value>
 				<value>classpath:hibernate.properties</value>
-				<!-- <value>file:./jdbc.properties</value> -->
 				<value>classpath:kustvakt.conf</value>
 				<value>file:./kustvakt.conf</value>
 			</array>
@@ -101,7 +101,7 @@
 		<!-- <property name="validateOnMigrate" value="false" /> -->
 		<!-- <property name="cleanOnValidationError" value="true" /> -->
 		<property name="locations" value="${jdbc.schemaPath}" />
-		<property name="dataSource" ref="sqliteDataSource" />
+		<property name="dataSource" ref="dataSource" />
 	</bean>
 	
 	
@@ -285,9 +285,4 @@
 		<property name="dataSource" ref="dataSource" />
 	</bean>
 	
-	<!-- Krill -->
-	<bean id="search_krill"
-          class="de.ids_mannheim.korap.web.SearchKrill">
-        <constructor-arg value="${krill.indexDir}"/>
-    </bean>
 </beans>
\ No newline at end of file
diff --git a/full/src/main/resources/jdbc.properties b/full/src/main/resources/jdbc.properties
index 94047d1..8cd88d0 100644
--- a/full/src/main/resources/jdbc.properties
+++ b/full/src/main/resources/jdbc.properties
@@ -2,21 +2,21 @@
 # MySQL Settings
 # todo: test user and password in classpath file
 
-#jdbc.database=mysql
-#jdbc.driverClassName=com.mysql.jdbc.Driver
-#jdbc.url=jdbc:mysql://localhost:3306/kustvakt?autoReconnect=true
-#jdbc.username=korap
-#jdbc.password=password
-#jdbc.schemaPath=db.mysql
+jdbc.database=mysql
+jdbc.driverClassName=com.mysql.jdbc.Driver
+jdbc.url=jdbc:mysql://localhost:3306/kustvakt?autoReconnect=true
+jdbc.username=korap
+jdbc.password=password
+jdbc.schemaPath=db.new-mysql
 
 
 #-------------------------------------------------------------------------------
 # Sqlite Settings
 
-jdbc.database=sqlite
-jdbc.driverClassName=org.sqlite.JDBC
-jdbc.url=jdbc:sqlite:db.sqlite
-# jdbc.url=jdbc:sqlite:kustvakt_init_test.sqlite
-jdbc.username=pc
-jdbc.password=pc
-jdbc.schemaPath=classpath:db.sqlite
+#jdbc.database=sqlite
+#jdbc.driverClassName=org.sqlite.JDBC
+#jdbc.url=jdbc:sqlite:db.sqlite
+## jdbc.url=jdbc:sqlite:kustvakt_init_test.sqlite
+#jdbc.username=pc
+#jdbc.password=pc
+#jdbc.schemaPath=classpath:db.sqlite
diff --git a/lite/pom.xml b/lite/pom.xml
index 157e178..010af48 100644
--- a/lite/pom.xml
+++ b/lite/pom.xml
@@ -109,7 +109,7 @@
 						</goals>
 						<configuration>
 							<finalName>
-								Kustvakt-${project.version}-lite
+								Kustvakt-lite-${project.version}
 							</finalName>
 							<transformers>
 								<transformer
diff --git a/lite/src/main/resources/kustvakt-lite.conf b/lite/src/main/resources/kustvakt-lite.conf
index 87b1c8e..ab053d6 100644
--- a/lite/src/main/resources/kustvakt-lite.conf
+++ b/lite/src/main/resources/kustvakt-lite.conf
@@ -6,6 +6,7 @@
 krill.index.commit.auto = 500
 krill.index.relations.max = 100
 
+kustvakt.base.url=/api/v0.1/*
 kustvakt.default.pos = tt
 kustvakt.default.lemma = tt
 kustvakt.default.token = opennlp
