[
https://issues.apache.org/jira/browse/FELIX-6335?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17202365#comment-17202365
]
Tom Watson commented on FELIX-6335:
-----------------------------------
I will state that I don't think the fix in FELIX-6161 is incorrect and I am not
in favor of backing that out to address this issue. The bottom line is that
the objects being included in a service registration must not be changed
outside of the call to setProperties. Do so will only get you into trouble.
> String+ service property value of certain collection types causes incorrect
> dependency handling
> -----------------------------------------------------------------------------------------------
>
> Key: FELIX-6335
> URL: https://issues.apache.org/jira/browse/FELIX-6335
> Project: Felix
> Issue Type: Bug
> Components: Framework
> Affects Versions: scr-2.1.24
> Reporter: Mark Hoffmann
> Priority: Major
> Attachments: demo.test.zip
>
>
> I think it is an SCR problem, because the problem occurs with Equinox or
> Felix as framework.
> Someone changes a ServiceRegistration for a service *A,* that will be
> updated using setProperties, as soon something changes.
> One of the property values for the registration is String+ that should accept
> a collection.
> Another component *K* should be activated or deactivated, depending on a
> reference binding to *A* with a certain target filter for *A*'s properties
> I experienced that *K* is always activated correctly. But it will not
> de-activate, if the target filter for *A* does not match anymore, when the
> registration properties are changed using certain collection types like e.g.
> _Collections#unmodifiableList_ as property value.
> Changing the value to an ordinary list, everything behaves correct.
> I attached a bnd based test, that illustrates the problem. There are 3 tests
> that are working as expected and 3 tests failing. I deactivated two of these
> failing tests, because feiling just one test casuses an invalid state in the
> framework.
> I am not sure, if the rejection of certain collection types eventually by
> intention. But it has a large impact to the behavior of the framework.
> At least ther should be an warning or exception, that tells the user, that he
> uses invalid types.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)