diff --git a/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java b/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
index 5d22be5ef..b57833320 100644
--- a/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
+++ b/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
@@ -47,7 +47,7 @@ public class DynamicTreeSelectAction extends ActionSupport {
public String getNodeName() {
- return currentCategory.getName();
+ return currentCategory != null ? currentCategory.getName() : "Node not found";
}
}
diff --git a/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp b/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
index a07a210ed..5e280434e 100644
--- a/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
+++ b/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
@@ -10,25 +10,24 @@
-
-
diff --git a/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java b/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
index 9babeeea3..acaa3fd82 100644
--- a/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
+++ b/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
@@ -38,7 +38,8 @@ import com.opensymphony.xwork2.util.ValueStack;
* Renders a tree widget with AJAX support.
*
* The id attribute is normally specified, such that it could be looked up using
- * javascript if necessary.
+ * javascript if necessary. The id attribute is required, if the "treeSelectedTopic"
+ * is going to be used.
*
*
*
diff --git a/plugins/dojo/src/main/resources/template/ajax/tree.ftl b/plugins/dojo/src/main/resources/template/ajax/tree.ftl
index e59e66548..d7c3e8c18 100644
--- a/plugins/dojo/src/main/resources/template/ajax/tree.ftl
+++ b/plugins/dojo/src/main/resources/template/ajax/tree.ftl
@@ -6,6 +6,10 @@
// dojo.hostenv.writeIncludes();
-->
+ <#if parameters.treeSelectedTopic?exists>
+
+
+ #if>
gridIconSrcT="<@s.url value='${parameters.blankIconSrc}' encode="false" includeParams='none'/>"
@@ -59,7 +63,7 @@
id="${parameters.id?html}"
#if>
<#if parameters.treeSelectedTopic?exists>
- publishSelectionTopic="${parameters.treeSelectedTopic?html}"
+ selector="treeSelector_${parameters.id?default("")}"
#if>
<#if parameters.treeExpandedTopic?exists>
publishExpandedTopic="${parameters.treeExpandedTopic?html}"