diff --git a/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala b/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala
index 2536bffeaf01416e6dfa81e2a7a580a70032bdeb..a0cba3987ebc29daf555cd71782003c22e2dd300 100644
--- a/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala
+++ b/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala
@@ -91,6 +91,7 @@ object PlayPadServer extends App {
 
 	Runtime.getRuntime.addShutdownHook(new Thread(() => {
 		databaseConnection.close()
+		connectionSource.close()
 		stop()
 	}))
 }
diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/json/DesignLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/json/DesignLoader.scala
index 057a19d56f9924f9ba4f684277f9ead285ca1b10..a5127e85c39a926d59d5f9087494d26245144abf 100644
--- a/src/main/scala/de/tobias/playpad/server/project/loader/json/DesignLoader.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/loader/json/DesignLoader.scala
@@ -3,8 +3,8 @@ package de.tobias.playpad.server.project.loader.json
 import java.util.UUID
 
 import com.google.gson.JsonObject
-import de.tobias.playpad.server.project.{Design, Pad}
 import de.tobias.playpad.server.project.utils.JsonDef
+import de.tobias.playpad.server.project.{Design, Pad}
 
 /**
   * Created by tobias on 23.02.17.
diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/json/PadLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/json/PadLoader.scala
index c3591c2c16383ba3ef167054310fbd595a3784cc..bd55a1e36f4ad1ea872554f30eb821193924566d 100644
--- a/src/main/scala/de/tobias/playpad/server/project/loader/json/PadLoader.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/loader/json/PadLoader.scala
@@ -19,9 +19,11 @@ class PadLoader {
 
 			val pad = new Pad()
 			pad.id = UUID.fromString(json.get(PAD_ID).getAsString)
-			pad.name = json.get(PAD_NAME).getAsString
+			if (json.get(PAD_NAME) != null)
+				pad.name = json.get(PAD_NAME).getAsString
 			pad.position = json.get(PAD_POSITION).getAsInt
-			pad.name = json.get(PAD_CONTENT_TYPE).getAsString
+			if (json.get(PAD_CONTENT_TYPE) != null)
+				pad.contentType = json.get(PAD_CONTENT_TYPE).getAsString
 			pad.page = page
 
 			val pathLoader = new PathLoader
@@ -30,7 +32,8 @@ class PadLoader {
 
 			val designLoader = new DesignLoader
 			val designJson = json.getAsJsonObject(PAD_DESIGN)
-			pad.design = designLoader.load(designJson, pad)
+			if (designJson != null)
+				pad.design = designLoader.load(designJson, pad)
 
 			pad
 		}).toList
diff --git a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PathSaver.scala b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PathSaver.scala
index 7db424a736f682bee7d12c698e8a39046949cbfc..1d695eea4472cd0708a9d261237d6a6a2c247b24 100644
--- a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PathSaver.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PathSaver.scala
@@ -11,8 +11,8 @@ import de.tobias.playpad.server.server.SqlHelper
   */
 class PathSaver(val connection: Connection) {
 	def save(path: Path): Unit = {
-		SqlHelper.insertOrUpdate(connection, PATH, path.id, PAD_NAME, path.path)
-		SqlHelper.insertOrUpdate(connection, PATH, path.id, PAD_POSITION, path.pad.id)
+		SqlHelper.insertOrUpdate(connection, PATH, path.id, PATH_PAD_REF, path.pad.id)
+		SqlHelper.insertOrUpdate(connection, PATH, path.id, PATH_NAME, path.path)
 
 	}
 }
diff --git a/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala
index 72754c1bc0a40b1de18c408496b9d47e9ad8eb44..d902ef4e30a30579dd805cb8ff9cea8347d220dc 100644
--- a/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala
+++ b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala
@@ -24,7 +24,7 @@ class PadAddListener extends Listener {
 		SqlHelper.insertOrUpdate(connection, SqlDef.PAD, padId, SqlDef.PAD_POSITION, padPosition)
 
 		if (!json.get("contentType").isJsonNull) {
-			val contentType = json.get("contentType").getAsString;
+			val contentType = json.get("contentType").getAsString
 			SqlHelper.insertOrUpdate(connection, SqlDef.PAD, padId, SqlDef.PAD_CONTENT_TYPE, contentType)
 		}
 	}