Service name containing . or _, e.g. "JavaDSLV1.0" or "JavaDSLV1_0", cannot be used in Camel Service.
When you try to deploy switchyard.xml having the following Camel component:
<component name="JavaDSLBuilder">
<implementation.camel xmlns="urn:switchyard-component-camel:config:1.0">
<java class="org.switchyard.quickstarts.camel.service.JavaDSLBuilder"/>
</implementation.camel>
<service name="JavaDSLV1.0">
<interface.java interface="org.switchyard.quickstarts.camel.service.JavaDSL"/>
</service>
...
</component>
you'll get the following error:
org.switchyard.SwitchYardException: SWITCHYARD033006: The implementation consumer doesn't match expected service JavaDSLV1.0
at org.switchyard.component.camel.deploy.CamelActivator.handleImplementation(CamelActivator.java:103)
at org.switchyard.component.camel.deploy.CamelActivator.activateService(CamelActivator.java:75)
at org.switchyard.deploy.internal.Deployment.deployImplementations(Deployment.java:546)
at org.switchyard.deploy.internal.Deployment.start(Deployment.java:144)
at org.switchyard.test.SwitchYardTestKit.deploy(SwitchYardTestKit.java:757)
at org.switchyard.test.SwitchYardTestKit.start(SwitchYardTestKit.java:177)
at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:60)
at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:236)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:233)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.switchyard.test.SwitchYardRunner.run(SwitchYardRunner.java:85)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:59)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:120)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:103)
at org.apache.maven.surefire.Surefire.run(Surefire.java:169)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:350)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1021)
Caused by: org.switchyard.SwitchYardException: SWITCHYARD033006: The implementation consumer doesn't match expected service JavaDSLV1.0
at org.switchyard.component.camel.deploy.CamelActivator.verifyRouteDefinitions(CamelActivator.java:137)
at org.switchyard.component.camel.deploy.CamelActivator.handleImplementation(CamelActivator.java:94)
... 28 more
|