XMLWordPrintable

    • Icon: Suggestion Suggestion
    • Resolution: Obsolete
    • None
    • None
    • We collect Confluence feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      https://extranet.atlassian.com/display/SUPPORT/2009/05/01/A+better+500page.jsp

      Basically we would like to have a sorted list of the plugins currently enabled in the instance, Atlassian Supported and Unsupported. I couldn't think of an elegant, easy to maintain, way of doing it since there isn't a 'support' flag on the plugin objects. You can maybe pull it from the plugins xml file that the Plugin Repository uses but that seemed like a lot of work. So I just brute forced it:

      <h3>Plugins</h3>
              <h4>Atlassian Supported</h4>
              <ul class="plugins">
              <%  if (confluenceInfo != null) {
                      
                      try
                      {
                          //block for Atlassian Supported Plugin listing
                          for (Iterator it = confluenceInfo.getEnabledPlugins().iterator(); it.hasNext();)
                          {
                              Plugin plugin = (Plugin) it.next();
                              PluginInformation pluginInfo = plugin.getPluginInformation();
                              String pluginName = plugin.getName();
                              String pluginKey = plugin.getKey();
                              String pluginVersion = pluginInfo == null ? "N/A" : pluginInfo.getVersion();
                              boolean atlSupport = false;
                              //supported listing as of 2.10.2 %>
                     <%!         String[] supported = new String[] {"com.atlassian.confluence.extra.applinks",
                                                                 "com.atlassian.confluence.ext.mailpage",
                                                                 "com.atlassian.confluence.extra.sharepoint",
                                                                 "confluence.menu.add","confluence.sections.admin",
                                                                 "confluence.macros.advanced",
                                                                 "confluence.sections.attachments",
                                                                 "com.atlassian.confluence.plugins.attachmentExtractors",
                                                                 "confluence.macros.basic",
                                                                 "confluence.sections.browse",
                                                                 "confluence.extra.chart",
                                                                 "com.atlassian.confluence.themes.clickr",
                                                                 "confluence.macros.code",
                                                                 "confluence.comment.action",
                                                                 "confluence.repository.client",
                                                                 "confluence.extra.attachments",
                                                                 "com.atlassian.confluence.plugins.xmlrpc.bloggingrpc",
                                                                 "com.atlassian.confluence.contributors",
                                                                 "confluence.macros.html","confluence.extra.confluencerpc",
                                                                 "com.atlassian.confluence.ext.usage",
                                                                 "confluence.content.action.menu",
                                                                 "confluence.sections.page.temp",
                                                                 "confluence.sections.content.metadata",
                                                                 "confluence.extractors.core",
                                                                 "confluence.listeners.core",
                                                                 "confluence.converters.core",
                                                                 "confluence.lifecycle.core",
                                                                 "confluence.macros.dashboard",
                                                                 "com.atlassian.confluence.themes.default",
                                                                 "confluence.sections.admin.indexing",
                                                                 "confluence.extra.dynamictasklist2",
                                                                 "confluence.sections.profile.edit",
                                                                 "confluence.languages.fr_FR",
                                                                 "confluence.languages.de_DE",
                                                                 "confluence.sections.dashboard.global",
                                                                 "confluence.sections.labels",
                                                                 "confluence.extra.impresence2",
                                                                 "confluence.extra.information",
                                                                 "confluence.extra.jira",
                                                                 "confluence.extra.layout",
                                                                 "com.atlassian.confluence.themes.leftnavigation",
                                                                 "confluence.extra.livesearch",
                                                                 "confluence.sections.news",
                                                                 "com.atlassian.confluence.extra.officeconnector",
                                                                 "confluence.sections.page.operations",
                                                                 "confluence.search.mappers.lucene",
                                                                 "confluence.sections.page",
                                                                 "com.atlassian.confluence.plugins.pagetree",
                                                                 "confluence.sections.page.actions",
                                                                 "confluence.sections.profile",
                                                                 "confluence.sections.admin.generalconfig",
                                                                 "confluence.sections.search.view",
                                                                 "com.atlassian.confluence.plugins.socialbookmarking",
                                                                 "confluence.sections.space.actions",
                                                                 "confluence.sections.space.admin",
                                                                 "confluence.sections.space.advanced",
                                                                 "confluence.sections.space.browse",
                                                                 "confluence.sections.space",
                                                                 "confluence.sections.space.labels",
                                                                 "confluence.sections.space.pages",
                                                                 "confluence.web.resources",
                                                                 "org.randombits.confluence.toc",
                                                                 "confluence.extra.masterdetail",
                                                                 "com.atlassian.confluence.tinymceplugin",
                                                                 "com.atlassian.confluence.plugins.uwc.uwcimporter-adminpanel",
                                                                 "confluence.admin.user",
                                                                 "confluence.extra.userlister",
                                                                 "confluence.user.menu",
                                                                 "confluence.sections.profile.view",
                                                                 "com.atlassian.confluence.extra.widgetconnector",
                                                                 "confluence.renderer.components"}; %>
      <%                        for (int x= 0; x < supported.length; x++)
                                  if (pluginKey.equals(supported[x]))
                                   {
                                      atlSupport = true;
                                      break;
                                   }
                         
                              if (pluginVersion == null) // sometimes the version isn't defined by the plugin
                                  pluginVersion = "N/A";
                               
                               
              
                              if (atlSupport)
                              {%>
                                  <li><%= GeneralUtil.htmlEncode(pluginName) %> (<%= GeneralUtil.htmlEncode(pluginKey) %>, Version: <%= pluginVersion %>)</li>
              <%         }} %>
              <h4>Unsupported</h4> <%
                      //block for Unsupported Plugin listing
                      
                      for (Iterator it = confluenceInfo.getEnabledPlugins().iterator(); it.hasNext();)
                          {
                              Plugin plugin = (Plugin) it.next();
                              PluginInformation pluginInfo = plugin.getPluginInformation();
                              String pluginName = plugin.getName();
                              String pluginKey = plugin.getKey();
                              String pluginVersion = pluginInfo == null ? "N/A" : pluginInfo.getVersion();
                              boolean atlSupport = false;
                              for (int x= 0; x < supported.length; x++)
                                  if (pluginKey.equals(supported[x]))
                                   {
                                      atlSupport = true;
                                      break;
                                   }
                         
                              if (pluginVersion == null) // sometimes the version isn't defined by the plugin
                                  pluginVersion = "N/A";
                               
                               
              
                              if (!atlSupport)
                              {%>
                                  <li><%= GeneralUtil.htmlEncode(pluginName) %> (<%= GeneralUtil.htmlEncode(pluginKey) %>, Version: <%= pluginVersion %>)</li>
              <%         }}
                      } catch (Exception e) { %>
                          <li>Error retrieving plugin information: <%= GeneralUtil.htmlEncode(e.toString()) %></li>
              <%      }
                  } else { %>
                      <li>No plugin information available.</li>
              <%  } %>
              </ul>
      

      Also please add the Server Base Url to the 500page, perhaps below the servlet version:

      Server Base Url: <%= GeneralUtil.getGlobalSettings().getBaseUrl() %><br>
      

      Thanks,
      Maleko

            Unassigned Unassigned
            mtaylor@atlassian.com Maleko Taylor (Inactive)
            Votes:
            2 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: