XMLWordPrintable

    • Type: Suggestion
    • Resolution: Obsolete
    • None
    • Component/s: None

      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

            Assignee:
            Unassigned
            Reporter:
            Maleko Taylor (Inactive)
            Votes:
            2 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: