You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Felix Meschberger (JIRA)" <ji...@apache.org> on 2010/08/03 11:51:15 UTC

[jira] Updated: (FELIX-2288) Felix SCR API problem/misunderstanding

     [ https://issues.apache.org/jira/browse/FELIX-2288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger updated FELIX-2288:
-------------------------------------

             Assignee: Felix Meschberger
        Fix Version/s:  scr-1.4.2
                       webconsole-3.1.2
    Affects Version/s: webconsole-3.1.0
                        scr-1.4.0
                       scr-1.2.0
                       scr-1.0.8
                       scr-1.0.6
                       scr-1.0.4
                       scr-1.0.2
                       scr-1.0.0

> Felix SCR API problem/misunderstanding
> --------------------------------------
>
>                 Key: FELIX-2288
>                 URL: https://issues.apache.org/jira/browse/FELIX-2288
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR), Web Console
>    Affects Versions: scr-1.0.0, scr-1.0.2, scr-1.0.4, scr-1.0.6, scr-1.0.8, scr-1.2.0,  scr-1.4.0, webconsole-3.1.0
>            Reporter: Valentin Valchev
>            Assignee: Felix Meschberger
>            Priority: Critical
>             Fix For:  scr-1.4.2, webconsole-3.1.2
>
>
> I've been playing with the Components plugin of the Web Console and it work perfectly with the Felix SCR implementation. When I switched to ProSyst/Equinox implementation (they are basically the same) I found a small problem.
> When I disable a component, it's ID becomes -1 and I cannot enable it anymore. As long as I disable components all their IDs becomes -1.
> I opened the OSGi r4.2 specification to see if there is a reason for this behaviour. The JavaDoc for ComponentConstants states for the component ID, that 
> "The value of this property is assigned by the Service Component Runtime when a component configuration is created."
> In part 112.6 Component Properties, the specification says, that 'component.id' property is always added by the SCR but for "Each component configuration".
> When a component is disabled or uninstalled, there is no configuration - it's just a component definition. So the SCR is not required to assign ID.
> As for the Web Console we can easily fix the problem by using the pair bundle + component name for identification, instead of ID. However, since Apache SCR API is becoming recommended OSGi API, it would be better to define a mature and compatible API.

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