diff --git a/src/main/java/org/olat/course/run/RunMainController.java b/src/main/java/org/olat/course/run/RunMainController.java index d82f35107b6ebed44520288728b6c279b3d3d5c2..8c09f5800353d3e21fc6472bee179143baa6d2d4 100644 --- a/src/main/java/org/olat/course/run/RunMainController.java +++ b/src/main/java/org/olat/course/run/RunMainController.java @@ -251,12 +251,16 @@ public class RunMainController extends MainLayoutBasicController implements Gene // it is to correctly apply external links using course-internal links via javascript coursemain.contextPut("courserepokey", courseRepositoryEntry.getKey()); coursemain.put("coursemain", columnLayoutCtr.getInitialComponent()); - // on initial call we have to set the data-nodeid manually. later it will be updated by updateCourseDataAttributes() automatically. - String initNodeId = currentCourseNode != null ? currentCourseNode.getIdent() : null; - if (initNodeId == null) { - initNodeId = treeModel.getRootNode().getIdent(); + // on initial call we have to set the data-nodeid manually. later it + // will be updated by updateCourseDataAttributes() automatically, but + // only when course visible to users (menu tree not null) + if (treeModel != null) { + String initNodeId = currentCourseNode != null ? currentCourseNode.getIdent() : null; + if (initNodeId == null) { + initNodeId = treeModel.getRootNode().getIdent(); + } + coursemain.contextPut("initNodeId", initNodeId); } - coursemain.contextPut("initNodeId", initNodeId); putInitialPanel(coursemain); // disposed message controller must be created beforehand