[ https://issues.apache.org/jira/browse/CAMEL-8185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14263870#comment-14263870 ]
ASF GitHub Bot commented on CAMEL-8185: --------------------------------------- Github user sabre1041 closed the pull request at: https://github.com/apache/camel/pull/364 > camel-scr - IllegalArgumentException: argument type mismatch > ------------------------------------------------------------ > > Key: CAMEL-8185 > URL: https://issues.apache.org/jira/browse/CAMEL-8185 > Project: Camel > Issue Type: Bug > Components: camel-scr > Affects Versions: 2.15.0 > Reporter: Charles Moulliard > Assignee: Willem Jiang > Fix For: 2.15.0 > > > When camel-scr (2.15-SNAPSHOT) is deployed and used with Apache Karaf - > 2.3.0.redhat-611412 > The following errors are generated when SCR got the CamelComponent or lost > the Component > {code} > 2014-12-26 11:13:49,453 | ERROR | r-1.0.0-thread-2 | osgi-camel-scr > | ? ? | 255 - > com.redhat.gpe.training.osgi-camel-scr - 1.0.0 | > [com.redhat.gpe.training.osgi.camel.BootStrap(52)] The gotCamelComponent > method has thrown an exception > java.lang.IllegalArgumentException: argument type mismatch > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method)[:1.7.0_51] > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_51] > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_51] > at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_51] > at > org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:231)[82:org.apache.felix.scr:1.8.0.redhat-611412] > at > org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:39)[82:org.apache.felix.scr:1.8.0.redhat-611412] > {code} > {code} > 2014-12-26 11:22:50,355 | ERROR | l Console Thread | osgi-camel-scr > | ? ? | 255 - > com.redhat.gpe.training.osgi-camel-scr - 1.0.0 | > [com.redhat.gpe.training.osgi.camel.BootStrap(52)] The lostCamelComponent > method has thrown an exception > java.lang.IllegalArgumentException: argument type mismatch > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method)[:1.7.0_51] > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_51] > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_51] > at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_51] > at > org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:231)[82:org.apache.felix.scr:1.8.0.redhat-611412] > at > org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:39)[82:org.apache.felix.scr:1.8.0.redhat-611412] > at > org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:624)[82:org.apache.felix.scr:1.8.0.redhat-611412] > at > org.apache.felix.scr.impl.helper.BaseMethod.invoke(BaseMethod.java:508)[82:org.apache.felix.scr:1.8.0.redhat-611412] > at > org.apache.felix.scr.impl.helper.BindMethod.invoke(BindMethod.java:37)[82:org.apache.felix.scr:1.8.0.redhat-611412] > at > org.apache.felix.scr.impl.manager.DependencyManager.invokeUnbindMethod(DependencyManager.java:1711)[82:org.apache.felix.scr:1.8.0.redhat-611412] > {code} > Here is the code used as example : > {code} > import org.apache.camel.CamelContext; > import org.apache.camel.RoutesBuilder; > import org.apache.camel.scr.AbstractCamelRunner; > import org.apache.camel.spi.ComponentResolver; > import org.apache.felix.scr.annotations.*; > import org.slf4j.Logger; > import org.slf4j.LoggerFactory; > import java.util.ArrayList; > import java.util.List; > @Component(label = BootStrap.COMPONENT_LABEL, description = > BootStrap.COMPONENT_DESCRIPTION) > @Properties({ > @Property(name = "camelContextId", value = "camel-scr-exercise"), > @Property(name = "active", value = "true") > }) > @References({ > @Reference(name = "camelComponent",referenceInterface = > ComponentResolver.class, > cardinality = ReferenceCardinality.MANDATORY_MULTIPLE, policy > = ReferencePolicy.DYNAMIC, > policyOption = ReferencePolicyOption.GREEDY, bind = > "gotCamelComponent", unbind = "lostCamelComponent") > }) > public class BootStrap extends AbstractCamelRunner { > public static final String COMPONENT_LABEL = "bootstrap.CamelScrExercise"; > public static final String COMPONENT_DESCRIPTION = "This is the > description for camel-scr-exercise."; > public static final Logger LOGGER = > LoggerFactory.getLogger(BootStrap.class); > @Override > protected List<RoutesBuilder> getRouteBuilders() { > LOGGER.info("Load Camel Routes definition"); > List<RoutesBuilder> routesBuilders = new ArrayList<>(); > routesBuilders.add(new GreeterRoute()); > return routesBuilders; > } > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)