diff --git a/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodeInfo.java b/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodeInfo.java
index 987886a40184ebb99b6058791ca5d28464ab14d0..8de4ace05add6b69ad54523b3c5e18c06cf08064 100644
--- a/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodeInfo.java
+++ b/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodeInfo.java
@@ -26,6 +26,7 @@ public class NodeInfo {
     private final String groupWrite;
     private final boolean isPublic;
     private final boolean asyncTrans;
+    private final boolean sticky;
     private final boolean busy;
     private final boolean listOfFiles;
 
@@ -40,6 +41,7 @@ public class NodeInfo {
         this.groupWrite = getGroupWrite(node);
         this.isPublic = isPublic(node);
         this.asyncTrans = isAsyncTrans(node);
+        this.sticky = isSticky(node);
         this.busy = isBusy(node);
         this.listOfFiles = isListOfFiles(node);
     }
@@ -70,11 +72,15 @@ public class NodeInfo {
     }
 
     private boolean isPublic(Node node) {
-        return getProperty(node, NodeProperties.PUBLIC_READ_URI).map(value -> "t".equals(value)).orElse(false);
+        return getProperty(node, NodeProperties.PUBLIC_READ_URI).map(value -> "true".equals(value)).orElse(false);
     }
 
     private boolean isAsyncTrans(Node node) {
-        return getProperty(node, "urn:async_trans").map(value -> "t".equals(value)).orElse(false);
+        return getProperty(node, NodeProperties.ASYNC_TRANS_URN).map(value -> "true".equals(value)).orElse(false);
+    }
+
+    private boolean isSticky(Node node) {
+        return getProperty(node, NodeProperties.STICKY_URN).map(value -> "true".equals(value)).orElse(false);
     }
     
     private boolean isBusy(Node node) {
@@ -175,6 +181,10 @@ public class NodeInfo {
         return asyncTrans;
     }
 
+    public boolean isSticky() {
+        return sticky;
+    }
+
     public boolean isBusy() {
         return busy;
     }
diff --git a/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodesService.java b/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodesService.java
index 4c3b4bfa816c7ce9a97cea44f177ad55e01de9dd..018ccc24e4fd05ab06e1a6b4e06aa78bacd50e04 100644
--- a/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodesService.java
+++ b/vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodesService.java
@@ -3,6 +3,7 @@ package it.inaf.ia2.vospace.ui.service;
 import it.inaf.ia2.aa.data.User;
 import it.inaf.ia2.vospace.ui.client.VOSpaceClient;
 import it.inaf.ia2.vospace.ui.data.ListNodeData;
+import it.inaf.oats.vospace.datamodel.NodeProperties;
 import it.inaf.oats.vospace.datamodel.NodeUtils;
 import java.io.IOException;
 import java.io.StringWriter;
@@ -31,9 +32,9 @@ public class NodesService {
     public ListNodeData generateNodesHtml(String path, User user) {
 
         ListNodeData listNodeData = new ListNodeData();
-        
+
         Node node = client.getNode(path);
-        
+
         listNodeData.setWritable(NodeUtils.checkIfWritable(node, user.getName(), user.getGroups()));
 
         try (StringWriter sw = new StringWriter()) {
@@ -48,7 +49,7 @@ public class NodesService {
             }
 
             listNodeData.setHtmlTable(sw.toString());
-            
+
             return listNodeData;
         } catch (IOException ex) {
             throw new UncheckedIOException(ex);
@@ -75,7 +76,7 @@ public class NodesService {
         html += "<td>" + nodeInfo.getGroupRead() + "</td>";
         html += "<td>" + nodeInfo.getGroupWrite() + "</td>";
         html += "<td>";
-        if (NodeUtils.checkIfWritable(node, user.getName(), user.getGroups())) {
+        if (NodeUtils.checkIfWritable(node, user.getName(), user.getGroups()) && !nodeInfo.isSticky()) {
             html += "<span class=\"icon trash-icon pointer\" onclick=\"deleteNode('" + nodeInfo.getPath() + "')\"></span>";
         }
         html += "</td>";
@@ -121,7 +122,7 @@ public class NodesService {
         if (nodeInfo.isPublic()) {
             return true;
         }
-        
+
         if (nodeInfo.getCreator().equals(user.getName())) {
             return true;
         }