diff --git a/pom.xml b/pom.xml
index 0597c61..a0304b5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@
org.gcube.portlets.user
workspace-tree-widget
- 6.16.0-SNAPSHOT
+ 6.16.1-SNAPSHOT
gCube Workspace Tree Widget
gCube Workspace Tree Widget is a widget to navigate and interact with gCube Workspace
diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java
index 76141fd..d73499a 100644
--- a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java
+++ b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java
@@ -3891,8 +3891,11 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
WorkspaceItem item = workspace.getItem(itemId);
if(item instanceof WorkspaceFolder){
WorkspaceFolder folder = (WorkspaceFolder) item;
+
if(setPublic){
- folder.setPublic(true);
+ if(!folder.isPublic())
+ folder.setPublic(true);
+
String folderId = item.getId();
workspaceLogger.info("HL returning folder link id: "+folderId);
ApplicationProfileReader apReader = new ApplicationProfileReader("Workspace-Explorer-App", "org.gcube.portlets.user.workspaceexplorerapp.server.WorkspaceExplorerAppServiceImpl");
@@ -3921,7 +3924,10 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
throw new NoGcubeItemTypeException("The item is not a Gcube Item");
} catch (NoGcubeItemTypeException e){
- workspaceLogger.error("Error in server FormattedGcubeItemProperties: ", e);
+ workspaceLogger.error("Error in server: ", e);
+ throw new Exception(e.getMessage());
+ } catch (InsufficientPrivilegesException e) {
+ workspaceLogger.error("Error in server: ", e);
throw new Exception(e.getMessage());
} catch (Exception e) {
workspaceLogger.error("Error in server markFolderAsPublicForFolderItemId: ", e);