From 10f798a1fab5f7b23f498e2746b1b6a50010a288 Mon Sep 17 00:00:00 2001 From: Paul Martin Date: Thu, 31 Mar 2016 08:47:56 +0100 Subject: [PATCH] Fix for #1034 Ticket Page Error --- .../gitblit/wicket/pages/RepositoryPage.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java index 8958eb2a..36c5ae16 100644 --- a/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java +++ b/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java @@ -269,8 +269,15 @@ public abstract class RepositoryPage extends RootPage { @Override protected void setupPage(String repositoryName, String pageName) { + + //This method should only be called once in the page lifecycle. + //However, it must be called after the constructor has run, hence not in onInitialize + //It may be attempted to be called again if an info or error message is displayed. + if (get("projectTitle") != null) { return; } + String projectName = StringUtils.getFirstPathElement(repositoryName); ProjectModel project = app().projects().getProjectModel(projectName); + if (project.isUserProject()) { // user-as-project add(new LinkPanel("projectTitle", null, project.getDisplayName(), @@ -662,15 +669,7 @@ public abstract class RepositoryPage extends RootPage { } } - @Override - protected void onInitialize() { - - super.onInitialize(); - // setup page header and footer - setupPage(getRepositoryName(), "/ " + getPageName()); - } - @Override protected void onBeforeRender() { // dispose of repository object @@ -678,6 +677,9 @@ public abstract class RepositoryPage extends RootPage { r.close(); r = null; } + + // setup page header and footer + setupPage(getRepositoryName(), "/ " + getPageName()); super.onBeforeRender(); } -- 2.39.5