From 81b054e92e7e66ad5a99d20a8dd687cf8ef53254 Mon Sep 17 00:00:00 2001 From: Muhammad Taufiq Date: Mon, 20 Jan 2020 16:19:33 +0000 Subject: [PATCH 1/2] [ZEPPELIN-4574] Fixed rootNotebookFolder and noteFileName in VFSNotebookRepo.java to allow it to work on windows --- .../org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java index d8d8df0433d..ad8adb1b46e 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java @@ -88,7 +88,7 @@ protected void setNotebookDirectory(String notebookDirPath) throws IOException { LOGGER.info("Notebook dir doesn't exist: {}, creating it.", rootNotebookFileObject.getName().getPath()); } - this.rootNotebookFolder = rootNotebookFileObject.getName().getPath(); + this.rootNotebookFolder = rootNotebookFileObject.getName().getURI().replace("file:///", "/"); } @Override @@ -110,7 +110,7 @@ private Map listFolder(FileObject fileObject) throws IOExcepti noteInfos.putAll(listFolder(child)); } } else { - String noteFileName = fileObject.getName().getPath(); + String noteFileName = fileObject.getName().getURI().replace("file:///", "/"); if (noteFileName.endsWith(".zpln")) { try { String noteId = getNoteId(noteFileName); From b0a65c0d2d1dd8d5663e6227e87b4d2c34d37ec7 Mon Sep 17 00:00:00 2001 From: Muhammad Taufiq Date: Tue, 21 Jan 2020 14:05:13 +0000 Subject: [PATCH 2/2] [ZEPPELIN-4574] Added comments explaining the change --- .../org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java index ad8adb1b46e..e4522358dc1 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java @@ -88,6 +88,8 @@ protected void setNotebookDirectory(String notebookDirPath) throws IOException { LOGGER.info("Notebook dir doesn't exist: {}, creating it.", rootNotebookFileObject.getName().getPath()); } + // getPath() method returns a string without root directory in windows, so we use getURI() instead + // windows does not support paths with "file:///" prepended, so we replace it by "/" this.rootNotebookFolder = rootNotebookFileObject.getName().getURI().replace("file:///", "/"); } @@ -110,6 +112,8 @@ private Map listFolder(FileObject fileObject) throws IOExcepti noteInfos.putAll(listFolder(child)); } } else { + // getPath() method returns a string without root directory in windows, so we use getURI() instead + // windows does not support paths with "file:///" prepended. so we replace it by "/" String noteFileName = fileObject.getName().getURI().replace("file:///", "/"); if (noteFileName.endsWith(".zpln")) { try {