You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Thomas Diesler (JIRA)" <ji...@apache.org> on 2009/03/31 13:57:52 UTC

[jira] Created: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Hardcoded list of webconsole plugins in OSGiManager
---------------------------------------------------

                 Key: FELIX-1014
                 URL: https://issues.apache.org/jira/browse/FELIX-1014
             Project: Felix
          Issue Type: Sub-task
          Components: Web Console
    Affects Versions: webconsole-1.2.8
            Reporter: Thomas Diesler


Instead of 

    private static final String[] PLUGIN_CLASSES =
        { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
            "org.apache.felix.webconsole.internal.core.BundlesServlet",
            "org.apache.felix.webconsole.internal.core.InstallAction",
            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
            "org.apache.felix.webconsole.internal.misc.ShellServlet",
            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
            "org.apache.felix.webconsole.internal.system.GCAction",
            "org.apache.felix.webconsole.internal.system.VMStatPlugin" };

we propose

    protected String[] getPluginClasses() 
    {
       return new String[] { 
           "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
           "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
           "org.apache.felix.webconsole.internal.compendium.ConfigManager",
           "org.apache.felix.webconsole.internal.core.BundlesServlet",
           "org.apache.felix.webconsole.internal.core.InstallAction",
           "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
           "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
           "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
           "org.apache.felix.webconsole.internal.misc.LicenseServlet",
           "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
           "org.apache.felix.webconsole.internal.misc.ShellServlet",
           "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
           "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
           "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
           "org.apache.felix.webconsole.internal.system.GCAction",
           "org.apache.felix.webconsole.internal.system.ShutdownAction",
           "org.apache.felix.webconsole.internal.system.ShutdownRender",
           "org.apache.felix.webconsole.internal.system.VMStatRender", };
    }
    
    /**
     * The default value for the {@link #PROP_MANAGER_ROOT} configuration
     * property (value is "/system/console").
     */
    protected String getDefaultManagerRoot()
    {
       return DEFAULT_MANAGER_ROOT;
    }

----------------------
    
    public void init()
    {
        // base class initialization not needed, since the GenericServlet.init
        // is an empty method

        // get the installed plugin classes 
        String[] pluginClasses = getPluginClasses();
       
        // setup the included plugins
        ClassLoader classLoader = getClass().getClassLoader();
        for ( int i = 0; i < pluginClasses.length; i++ )
        {
            String pluginClassName = pluginClasses[i];
            try
            {

-------------------

    void updateConfiguration( Dictionary config )
    {
        // get the web manager root path
        webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger resolved FELIX-1014.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: webconsole-1.2.12

Added support to disable select console plugins provided by the Web Console bundle itself in Rev. 812513.

The ConfigurationListener now also implements the MetaTypeProvider interface to provide the ObjectClassDefinition for the configurtion on demand based on the actual list of configured plugin classes.

For this reason the SCR plugin and meta type XML file generation are not required any more.

By default, all plugins are enabled, of course.

> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>            Assignee: Felix Meschberger
>             Fix For: webconsole-1.2.12
>
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12752526#action_12752526 ] 

Felix Meschberger edited comment on FELIX-1014 at 9/8/09 7:00 AM:
------------------------------------------------------------------

Added support to disable select console plugins provided by the Web Console bundle itself in Rev. 812513.

The ConfigurationListener now also implements the MetaTypeProvider interface to provide the ObjectClassDefinition for the configurtion on demand based on the actual list of configured plugin classes.

For this reason the SCR plugin and meta type XML file generation are not required any more.

By default, all plugins are enabled, of course.

Thomas, can you please confirm this suits your needs ? Thanks.

      was (Author: fmeschbe):
    Added support to disable select console plugins provided by the Web Console bundle itself in Rev. 812513.

The ConfigurationListener now also implements the MetaTypeProvider interface to provide the ObjectClassDefinition for the configurtion on demand based on the actual list of configured plugin classes.

For this reason the SCR plugin and meta type XML file generation are not required any more.

By default, all plugins are enabled, of course.
  
> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>            Assignee: Felix Meschberger
>             Fix For: webconsole-1.2.12
>
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Work started: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Work on FELIX-1014 started by Felix Meschberger.

> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>            Assignee: Felix Meschberger
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700562#action_12700562 ] 

Felix Meschberger commented on FELIX-1014:
------------------------------------------

Ah right, I now remember we discussed this at ApacheCon EU 09 and came to the conclusion, that it would be nice to be able to easily disable the default plugins to be able to provide replacements.

I think, this should rather be done by configuration, than by overwriting the OsgiManagerServlet.

> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700466#action_12700466 ] 

Felix Meschberger commented on FELIX-1014:
------------------------------------------

I assume you want to be able to overwrite/extend the default list of plugins, right ?

Why would you want to do that ? Do you have a problem you cannot solve by just registering plugins and thus need to place your plugins in the same bundle as the web console and thus extend the web console servlet ?

Thanks for clarification.

> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Carsten Ziegeler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700522#action_12700522 ] 

Carsten Ziegeler commented on FELIX-1014:
-----------------------------------------

Now I think it would make sense to make the default plugins configurable :) Maybe in some cases you don't want some of the default plugins or you want to easily replace it with your own version.
Now, the questions is if you want to do this by code or by configuration.

> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger reassigned FELIX-1014:
----------------------------------------

    Assignee: Felix Meschberger

> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
>                 Key: FELIX-1014
>                 URL: https://issues.apache.org/jira/browse/FELIX-1014
>             Project: Felix
>          Issue Type: Sub-task
>          Components: Web Console
>    Affects Versions: webconsole-1.2.8
>            Reporter: Thomas Diesler
>            Assignee: Felix Meschberger
>
> Instead of 
>     private static final String[] PLUGIN_CLASSES =
>         { "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>             "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>             "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>             "org.apache.felix.webconsole.internal.core.BundlesServlet",
>             "org.apache.felix.webconsole.internal.core.InstallAction",
>             "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>             "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>             "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>             "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>             "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>             "org.apache.felix.webconsole.internal.misc.ShellServlet",
>             "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>             "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>             "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>             "org.apache.felix.webconsole.internal.system.GCAction",
>             "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
>     protected String[] getPluginClasses() 
>     {
>        return new String[] { 
>            "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>            "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
>            "org.apache.felix.webconsole.internal.compendium.ConfigManager",
>            "org.apache.felix.webconsole.internal.core.BundlesServlet",
>            "org.apache.felix.webconsole.internal.core.InstallAction",
>            "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
>            "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
>            "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
>            "org.apache.felix.webconsole.internal.misc.LicenseServlet",
>            "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
>            "org.apache.felix.webconsole.internal.misc.ShellServlet",
>            "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
>            "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
>            "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
>            "org.apache.felix.webconsole.internal.system.GCAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownAction",
>            "org.apache.felix.webconsole.internal.system.ShutdownRender",
>            "org.apache.felix.webconsole.internal.system.VMStatRender", };
>     }
>     
>     /**
>      * The default value for the {@link #PROP_MANAGER_ROOT} configuration
>      * property (value is "/system/console").
>      */
>     protected String getDefaultManagerRoot()
>     {
>        return DEFAULT_MANAGER_ROOT;
>     }
> ----------------------
>     
>     public void init()
>     {
>         // base class initialization not needed, since the GenericServlet.init
>         // is an empty method
>         // get the installed plugin classes 
>         String[] pluginClasses = getPluginClasses();
>        
>         // setup the included plugins
>         ClassLoader classLoader = getClass().getClassLoader();
>         for ( int i = 0; i < pluginClasses.length; i++ )
>         {
>             String pluginClassName = pluginClasses[i];
>             try
>             {
> -------------------
>     void updateConfiguration( Dictionary config )
>     {
>         // get the web manager root path
>         webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT, getDefaultManagerRoot() );

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.