Merge branch 'master' of ssh://korap.ids-mannheim.de:29418/private/Kustvakt-core
diff --git a/KustvaktBaseServer.launch b/KustvaktBaseServer.launch
new file mode 100644
index 0000000..c6defd1
--- /dev/null
+++ b/KustvaktBaseServer.launch
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/Kustvakt-core/src/main/java/de/ids_mannheim/korap/web/KustvaktBaseServer.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
+<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="de.ids_mannheim.korap.web.KustvaktBaseServer"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="Kustvakt-core"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
+</launchConfiguration>
diff --git a/db.sqlite b/db.sqlite
new file mode 100644
index 0000000..148055d
--- /dev/null
+++ b/db.sqlite
Binary files differ
diff --git a/doDebugg.bat b/doDebugg.bat
new file mode 100644
index 0000000..f36762a
--- /dev/null
+++ b/doDebugg.bat
@@ -0,0 +1,9 @@
+: skript zum Remote Debuggen von eclipse's Debugger aus.
+
+set OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
+set JAR=-jar target/Kustvakt-core-0.59.7.jar
+
+java %OPTS% %JAR%
+
+
+
diff --git a/pom.xml b/pom.xml
index 354f8bd..3675651 100644
--- a/pom.xml
+++ b/pom.xml
@@ -432,7 +432,8 @@
         <dependency>
             <groupId>org.flywaydb</groupId>
             <artifactId>flyway-core</artifactId>
-            <version>3.2.1</version>
+            <!--  version>3.2.1</version -->
+            <version>4.0</version>
         </dependency>
 
         <dependency>
diff --git a/src/main/java/de/ids_mannheim/korap/handlers/EntityDao.java b/src/main/java/de/ids_mannheim/korap/handlers/EntityDao.java
index 8829064..5c23916 100644
--- a/src/main/java/de/ids_mannheim/korap/handlers/EntityDao.java
+++ b/src/main/java/de/ids_mannheim/korap/handlers/EntityDao.java
@@ -53,10 +53,28 @@
     // usersettings are fetched plus basic account info, no details, since i rarely use them anyway!
     @Override
     public User getAccount (String username) throws KustvaktException {
+    	
+    	Boolean bDEBUG = true;
         Map<String, String> namedParameters = Collections
                 .singletonMap("username", username);
         final String sql = "select a.* from korap_users as a where a.username=:username;";
         User user;
+        
+        // Debug by FB
+        if ( bDEBUG == true )
+        {	// User cannot be found in SQL DB since LDAP Authentication,
+        	// so create a User Object here.
+        	// TODO: what more data should be stored into it?
+        	// 28.04.17/FB
+        	user = new KorAPUser();
+        	user.setUsername(username);
+        	return user;
+        }
+        if( username.equalsIgnoreCase("bodmer") == true )
+        {
+        	return null;
+        }
+        //
         try {
             user = this.jdbcTemplate.queryForObject(sql, namedParameters,
                     new RowMapperFactory.UserMapper());
diff --git a/src/main/java/de/ids_mannheim/korap/interfaces/AuthenticationManagerIface.java b/src/main/java/de/ids_mannheim/korap/interfaces/AuthenticationManagerIface.java
index d5af729..e110a5b 100644
--- a/src/main/java/de/ids_mannheim/korap/interfaces/AuthenticationManagerIface.java
+++ b/src/main/java/de/ids_mannheim/korap/interfaces/AuthenticationManagerIface.java
@@ -32,6 +32,15 @@
 
 
     protected AuthenticationIface getProvider (String key, String default_iface) {
+    	
+    	// Debug FB: loop a Map
+    	/*
+    	 for (Map.Entry<String, AuthenticationIface> entry : this.providers.entrySet()) 
+    		{
+    		System.out.println("Debug: provider: Key : " + entry.getKey() + " Value : " + entry.getValue());
+    		}
+    	*/	
+    		
         AuthenticationIface iface = this.providers.get(key != null ? key
                 .toLowerCase() : "none");
         // todo: configurable authentication schema
diff --git a/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java b/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java
index b8914df..0cbbe13 100644
--- a/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java
+++ b/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java
@@ -475,7 +475,8 @@
             @QueryParam("offset") Integer pageIndex,
             @QueryParam("page") Integer pageInteger,
             @QueryParam("cq") String cq, @QueryParam("engine") String engine) {
-        TokenContext context = (TokenContext) securityContext
+
+    	TokenContext context = (TokenContext) securityContext
                 .getUserPrincipal();
         KustvaktConfiguration.BACKENDS eng = this.config.chooseBackend(engine);
         User user;
diff --git a/src/main/resources/default-config.xml b/src/main/resources/default-config.xml
index edc741d..be9f080 100644
--- a/src/main/resources/default-config.xml
+++ b/src/main/resources/default-config.xml
@@ -83,9 +83,9 @@
         <property name="username" value="${jdbc.username}"/>
         <property name="password" value="${jdbc.password}"/>
         <!-- relevant for single connection datasource and sqlite -->
-        <!-- <property name="suppressClose">
+        <property name="suppressClose">
             <value>true</value>
-        </property> -->
+        </property>
         <!--<property name="initialSize" value="2"/>-->
         <!--<property name="poolPreparedStatements" value="true"/>-->
     </bean>