Clement Escoffier created FELIX-4717:
----------------------------------------
Summary: Cannot use the stream API on injected collections
Key: FELIX-4717
URL: https://issues.apache.org/jira/browse/FELIX-4717
Project: Felix
Issue Type: Bug
Components: iPOJO
Affects Versions: ipojo-runtime-1.12.0
Reporter: Clement Escoffier
Assignee: Clement Escoffier
Fix For: ipojo-runtime-1.12.1
An incompatible class change error is thrown when the stream API is used on
injected collections:
{code}
[ERROR] : java.lang.IncompatibleClassChangeError: Conflicting default methods:
java/util/List.spliterator java/util/Set.spliterator
java.lang.IllegalStateException: java.lang.IncompatibleClassChangeError:
Conflicting default methods: java/util/List.spliterator
java/util/Set.spliterator
at
org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__M_stateChanged(LifecycleCallbackHandler.java:171)
~[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)
~[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:560)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:440)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.ComponentFactory.createInstance(ComponentFactory.java:179)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java:319)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java:240)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.extender.internal.linker.ManagedType$InstanceSupport$1.call(ManagedType.java:312)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.extender.internal.linker.ManagedType$InstanceSupport$1.call(ManagedType.java:306)
[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.extender.internal.queue.JobInfoCallable.call(JobInfoCallable.java:114)
[org.apache.felix.ipojo-1.12.0.jar:na]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[na:1.8.0]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[na:1.8.0]
at java.lang.Thread.run(Thread.java:744) [na:1.8.0]
Caused by: java.lang.IncompatibleClassChangeError: Conflicting default methods:
java/util/List.spliterator java/util/Set.spliterator
at
org.apache.felix.ipojo.handlers.dependency.ServiceCollection.spliterator(ServiceCollection.java)
~[org.apache.felix.ipojo-1.12.0.jar:na]
at java.util.Collection.stream(Collection.java:581) ~[na:1.8.0]
at
org.wisdom.samples.SamplesController.__M_test(SamplesController.java:100)
~[na:na]
at org.wisdom.samples.SamplesController.test(SamplesController.java)
~[na:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.8.0]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[na:1.8.0]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.8.0]
at java.lang.reflect.Method.invoke(Method.java:483) ~[na:1.8.0]
at org.apache.felix.ipojo.util.Callback.call(Callback.java:233)
~[org.apache.felix.ipojo-1.12.0.jar:na]
at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)
~[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)
~[org.apache.felix.ipojo-1.12.0.jar:na]
at
org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__M_stateChanged(LifecycleCallbackHandler.java:162)
~[org.apache.felix.ipojo-1.12.0.jar:na]
... 13 common frames omitted
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)