XMLWordPrintable

Details

    • 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.

    Description

      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

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: