10 Replies Latest reply on Jul 24, 2013 10:26 AM by synclpz

    Custom switchyard binding

    synclpz

      I'm trying to implement custom SY binding component for vendor-specific binary interface. As a starting point I took component-http, imported it from github, then made all the change I need (customized configuration XSD, classes, bindingmodels, bindingdata's, handlers, activator and so on). I found some property files, where, I think, component deployment info is stored (descriptior.properties and META-INF/services/*), changed them accordingly.

       

      Then I packaged everything in jar file and added as jboss-module, put dependency on it into switchyard core module, and to my test project.

       

      Did I do it right?

       

      Now, the issues:

       

      1. I don't know how to make my binding available in switchyard eclipse palette

      2. I don't know how to make eclipse recognize that config I put manually into switchyard.xml is ok, and not show this at line "<myapp:binding.myapp>":

       

      cvc-complex-type.2.4.a: Invalid content was found starting with element 'myapp:binding.myapp'. One of '{"http://docs.oasis-

      open.org/ns/opencsa/sca/200912":binding, "http://docs.oasis-open.org/ns/opencsa/sca/200912":callback, "http://

      docs.oasis-open.org/ns/opencsa/sca/200912":requires, "http://docs.oasis-open.org/ns/opencsa/sca/

      200912":policySetAttachment, "http://docs.oasis-open.org/ns/opencsa/sca/200912":extensions}' is expected.

       

       

      <?xml version="1.0" encoding="UTF-8"?>
      <switchyard xmlns="urn:switchyard-config:switchyard:1.0" xmlns:bean="urn:switchyard-component-bean:config:1.0" xmlns:myapp="urn:switchyard-component-psi:config:1.0" xmlns:sca="http://docs.oasis-open.org/ns/opencsa/sca/200912" xmlns:soap="urn:switchyard-component-soap:config:1.0" name="switchyard-example" targetNamespace="urn:com.example.switchyard:switchyard-example:1.0">
        <sca:composite name="switchyard-example" targetNamespace="urn:com.example.switchyard:switchyard-example:1.0">
          <sca:component name="TestMYAPPBean">
            <bean:implementation.bean class="com.example.switchyard.switchyard_example.TestMYAPPBean"/>
            <sca:service name="TestMYAPP">
              <sca:interface.java interface="com.example.switchyard.switchyard_example.TestMYAPP"/>
            </sca:service>
            <sca:reference name="MYAPPServiceRef">
              <sca:interface.java interface="com.example.switchyard.switchyard_example.MYAPPService"/>
            </sca:reference>
          </sca:component>
          <sca:reference name="MYAPPServiceRef" multiplicity="0..1" promote="TestMYAPPBean/MYAPPServiceRef">
            <sca:interface.java interface="com.example.switchyard.switchyard_example.MYAPPService"/>
            <myapp:binding.myapp>
                                              <myapp:contextMapper/>
                                              <myapp:addressList>127.0.0.1:6740;</myapp:addressList>
                                              <myapp:validateOnCreate>true</myapp:validateOnCreate>
                                              <myapp:commTimeout>10000</myapp:commTimeout>
                                              <myapp:reconnectInterval>1000</myapp:reconnectInterval>
                                              <myapp:socketTimeout>10000</myapp:socketTimeout>
                                    </myapp:binding.myapp>
          </sca:reference>
          <sca:service name="TestMYAPPService" promote="TestMYAPPBean/TestMYAPP">
            <sca:interface.java interface="com.example.switchyard.switchyard_example.TestMYAPP"/>
            <soap:binding.soap>
              <soap:wsdl>TestMYAPP.wsdl</soap:wsdl>
              <soap:wsdlPort>TestMYAPPPort</soap:wsdlPort>
            </soap:binding.soap>
          </sca:service>
        </sca:composite>
      </switchyard>
      

       

      3. Anyway, the service successlully deploys in jboss, but: I don't see any intialization logs of my reference binding, and SY tells me that it cannot find my reference:

       

       

      17:42:47,365 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 1) JBAS018565: Replaced deployment "switchyard-example.jar" with deployment "switchyard-example.jar"
      17:43:53,527 ERROR [org.switchyard.bus.camel.DefaultErrorListener] (default-workqueue-1) 
      ------- Begin Message Trace -------
      Consumer -> {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPService
      Provider -> {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPService
      Operation -> testmyapp
      MEP -> IN_ONLY
      Phase -> IN
      State -> OK
      Exchange Context -> 
                CamelFailureEndpoint : direct://%7Burn:com.example.switchyard:switchyard-example:1.0%7DTestMYAPPService
                org.switchyard.exchange.transaction.beforeInvoked : true
                org.switchyard.bus.camel.contract : org.switchyard.metadata.BaseExchangeContract@546ad76e
                org.switchyard.bus.camel.consumer : ServiceReference [name={urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPService, interface=BaseServiceInterface [type=java, operations=[testmyapp : IN_ONLY : [java:java.lang.String, null, null]]], domain=ServiceDomain [name=null]]
                org.switchyard.bus.camel.labels : {org.switchyard.exchangeGatewayName=[org.switchyard.label.behavior.transient], org.switchyard.exchange.transaction.beforeInvoked=[org.switchyard.label.behavior.transient]}
                CamelToEndpoint : direct://%7Burn:com.example.switchyard:switchyard-example:1.0%7DTestMYAPPService
                org.switchyard.exchangeGatewayName : _TestMYAPPService_soap_1
                org.switchyard.bus.camel.dispatcher : org.switchyard.bus.camel.ExchangeDispatcher@2e725efb
                CamelExceptionCaught : org.switchyard.HandlerException: java.lang.reflect.UndeclaredThrowableException
                org.switchyard.bus.camel.securityContext : SecurityContext[credentials=[ConfidentialityCredential [confidential=false]], securityDomainsToSubjects={}]
                CamelFilterMatched : false
                org.switchyard.bus.camel.replyHandler : org.switchyard.component.common.SynchronousInOutHandler@56b9c88f
                org.switchyard.exchangeInitiatedNS : 26997074348427
                org.switchyard.bus.camel.provider : Service [name={urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPService, interface=BaseServiceInterface [type=java, operations=[testmyapp : IN_ONLY : [java:java.lang.String, null, null]]], domain=ServiceDomain [name=null], metadata=org.switchyard.metadata.ServiceMetadataBuilder$ServiceMetadataImpl@4ac3754a]
                org.switchyard.bus.camel.phase : IN
                CamelCreatedTimestamp : Thu Jul 18 17:43:53 MSK 2013
      Message Context -> 
                breadcrumbId : ID-viktor-laptop-53207-1374153936604-3-1
                org.switchyard.contentType : java:java.lang.String
                org.switchyard.bus.camel.labels : {org.switchyard.contentType=[org.switchyard.label.behavior.transient], org.switchyard.bus.camel.messageSent=[org.switchyard.label.behavior.transient], org.switchyard.transform.TransformSequence=[org.switchyard.label.behavior.transient]}
                org.switchyard.bus.camel.messageSent : true
                org.switchyard.messageId : ID-viktor-laptop-53207-1374153936604-3-1
                org.switchyard.transform.TransformSequence : org.switchyard.transform.TransformSequence@6649739e
                org.switchyard.soap.messageName : testmyapp
      ------ End Message Trace -------
      Caught exception of type org.switchyard.HandlerException with message: java.lang.reflect.UndeclaredThrowableException
        Caused by exception of type java.lang.reflect.UndeclaredThrowableException, message: null
          Caused by exception of type org.switchyard.HandlerException, message: org.switchyard.SwitchYardException: No registered service found for {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPBean/MYAPPServiceRef
            Caused by exception of type org.switchyard.SwitchYardException, message: No registered service found for {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPBean/MYAPPServiceRef: org.switchyard.HandlerException: java.lang.reflect.UndeclaredThrowableException
                at org.switchyard.component.bean.ServiceProxyHandler.handle(ServiceProxyHandler.java:193) [switchyard-component-bean-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.component.bean.ServiceProxyHandler.handleMessage(ServiceProxyHandler.java:92) [switchyard-component-bean-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.processors.ProviderProcessor.process(ProviderProcessor.java:28) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.audit.FaultProcessor.process(FaultProcessor.java:44) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.Pipeline.process(Pipeline.java:117) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.Pipeline.process(Pipeline.java:80) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.TryProcessor.process(TryProcessor.java:104) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.TryProcessor.process(TryProcessor.java:78) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.audit.FaultProcessor.process(FaultProcessor.java:44) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:122) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProducer.process(UnitOfWorkProducer.java:63) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:360) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:331) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:227) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:331) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:153) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:106) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:92) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.ExchangeDispatcher.dispatch(ExchangeDispatcher.java:87) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.CamelExchange.sendInternal(CamelExchange.java:224) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.CamelExchange.send(CamelExchange.java:174) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.component.soap.InboundHandler.invoke(InboundHandler.java:264) [switchyard-component-soap-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.component.soap.endpoint.BaseWebService.invoke(BaseWebService.java:112) [switchyard-component-soap-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.component.soap.endpoint.BaseWebService.invoke(BaseWebService.java:41) [switchyard-component-soap-1.0.0.Final.jar:1.0.0.Final]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_17]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_17]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_17]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_17]
                at org.jboss.ws.common.invocation.AbstractInvocationHandlerJSE.invoke(AbstractInvocationHandlerJSE.java:108)
                at org.jboss.wsf.stack.cxf.JBossWSInvoker.performInvocation(JBossWSInvoker.java:149) [jbossws-cxf-server-4.1.3.Final-redhat-3.jar:4.1.3.Final-redhat-3]
                at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:178) [cxf-rt-frontend-jaxws-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:66) [cxf-rt-frontend-jaxws-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.jboss.wsf.stack.cxf.JBossWSInvoker.invoke(JBossWSInvoker.java:129) [jbossws-cxf-server-4.1.3.Final-redhat-3.jar:4.1.3.Final-redhat-3]
                at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_17]
                at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_17]
                at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_17]
                at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:107) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorChain.java:231) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.interceptor.OneWayProcessorInterceptor$1.run(OneWayProcessorInterceptor.java:144) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at org.apache.cxf.workqueue.AutomaticWorkQueueImpl$3.run(AutomaticWorkQueueImpl.java:426) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_17]
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_17]
                at org.apache.cxf.workqueue.AutomaticWorkQueueImpl$AWQThreadFactory$1.run(AutomaticWorkQueueImpl.java:351) [cxf-api-2.6.6-redhat-3.jar:2.6.6-redhat-3]
                at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_17]
      Caused by: java.lang.reflect.UndeclaredThrowableException
                at com.sun.proxy.$Proxy33.execute(Unknown Source)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_17]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_17]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_17]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_17]
                at org.jboss.weld.bean.proxy.AbstractBeanInstance.invoke(AbstractBeanInstance.java:45) [weld-core-1.1.13.Final-redhat-1.jar:1.1.13.Final-redhat-1]
                at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:105) [weld-core-1.1.13.Final-redhat-1.jar:1.1.13.Final-redhat-1]
                at org.jboss.weld.proxies.MYAPPService$1366014918$Proxy$_$$_WeldClientProxy.execute(MYAPPService$1366014918$Proxy$_$$_WeldClientProxy.java) [weld-core-1.1.13.Final-redhat-1.jar:]
                at com.example.switchyard.switchyard_example.TestMYAPPBean.testmyapp(TestMYAPPBean.java:28) [switchyard-example.jar:]
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_17]
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_17]
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_17]
                at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_17]
                at org.switchyard.component.bean.ServiceProxyHandler.handle(ServiceProxyHandler.java:161) [switchyard-component-bean-1.0.0.Final.jar:1.0.0.Final]
                ... 95 more
      Caused by: org.switchyard.HandlerException: org.switchyard.SwitchYardException: No registered service found for {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPBean/MYAPPServiceRef
                at org.switchyard.bus.camel.processors.ErrorHandlingProcessor.detectHandlerException(ErrorHandlingProcessor.java:61) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.processors.ErrorHandlingProcessor.process(ErrorHandlingProcessor.java:47) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.audit.FaultProcessor.process(FaultProcessor.java:44) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.Pipeline.process(Pipeline.java:117) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.Pipeline.process(Pipeline.java:80) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.TryProcessor$HandleDoCatchProcessor.processNext(TryProcessor.java:373) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.TryProcessor$DoCatchProcessor.process(TryProcessor.java:228) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.TryProcessor.process(TryProcessor.java:104) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.TryProcessor.process(TryProcessor.java:78) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.audit.FaultProcessor.process(FaultProcessor.java:44) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:122) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.UnitOfWorkProducer.process(UnitOfWorkProducer.java:63) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:360) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:331) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:227) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:331) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:153) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:106) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:92) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.ExchangeDispatcher.dispatch(ExchangeDispatcher.java:87) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.CamelExchange.sendInternal(CamelExchange.java:224) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.CamelExchange.send(CamelExchange.java:174) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.component.bean.ClientProxyBean$ClientProxyInvocationHandler.invoke(ClientProxyBean.java:279) [switchyard-component-bean-1.0.0.Final.jar:1.0.0.Final]
                ... 109 more
      Caused by: org.switchyard.SwitchYardException: No registered service found for {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPBean/MYAPPServiceRef
                at org.switchyard.handlers.AddressingHandler.handleMessage(AddressingHandler.java:58) [switchyard-runtime-1.0.0.Final.jar:1.0.0.Final]
                at org.switchyard.bus.camel.processors.HandlerProcessor.process(HandlerProcessor.java:61) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.switchyard.bus.camel.audit.FaultProcessor.process(FaultProcessor.java:44) [switchyard-bus-camel-1.0.0.Final.jar:1.0.0.Final]
                at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.Pipeline.process(Pipeline.java:117) [camel-core-2.10.0.jar:2.10.0]
                at org.apache.camel.processor.Pipeline.process(Pipeline.java:80) [camel-core-2.10.0.jar:2.10.0]
                ... 154 more
      
      

       

      Any thoughts?

        • 1. Re: Custom switchyard binding
          synclpz

          Seems like I should been posting this to dev forum. Anyway, there's my test-project setup:

           

          WS-SOAP>----> BEAN ----> MYAPPReference

           

          The bean looks like this:

           

           

          package com.example.switchyard.switchyard_example;
          
          
          import javax.inject.Inject;
          
          
          import org.switchyard.component.bean.Reference;
          import org.switchyard.component.bean.Service;
          
          
          import com.myapp.request.SomeRequest;
          
          
          @Service(TestMYAPP.class)
          public class TestMYAPPBean implements TestMYAPP {
          
          
                    @Inject
                    @Reference("MYAPPServiceRef")
                    MYAPPService ref;
          
          
                    @Override
                    public void testmyapp(String type) {
                              SomeRequest req = new SomeRequest();
                              req.set...
                              req.set...
                              req.set... 
          
                              ref.execute(req);
                    }
          
          
          }
          
          

           

           

          SomeRequest is subclass of BindingData of MyApp reference bindng.

          • 2. Re: Custom switchyard binding
            kcbabo

            One high-level comment here - the easiest way to implement extension components would be to reuse or create a Camel component.  These can be added to the switchyard subsystem as extension modules in your AS config (standalone.xml) and will automatically be added to the deployment class loader for SY applications.  You configure endpoints for extension components using the Camel URI binding, which allows you to enter a String URI that is passed directly into the component at runtime.  The tooling and runtime support all of this in 1.0.0.Final.

             

            The approach that you've taken here is to crate a "first class" component within SwitchYard.  It's a valid approach, but keep in mind that there's going to be a lot more work than the approach described above.  To your issues:

             

            - The dependency on your new component module should be added to the deployment, not to core.  Here's an article which describes how to do that:

            https://docs.jboss.org/author/display/AS71/Class+Loading+in+AS7

             

            - The Eclipse tooling does not have the ability to add additional first class components at this point.  The tooling is compatible with extension components as I described above, however.  That said, there's no reason why we couldn't add this capability at some point.  Please file a JIRA against SwitchYard if you'd like to see it.

            • 3. Re: Custom switchyard binding
              synclpz

              Thanks a lot, I tried camel, but had much problems with handling messages and replies, also I'm much concerned about performance. My component should support up to 4000TPS.

              I thought that it should be "more clear" to make first-class component and use any aspect that switchyard provides...

               

              - The dependency on your new component module should be added to the deployment, not to core.  Here's an article which describes how to do that:

              https://docs.jboss.org/author/display/AS71/Class+Loading+in+AS7

              Yes, I know,It is also added to my deployment, but switchyard still says No registered service found for {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPBean/MYAPPServiceRef

               

               

              - The Eclipse tooling does not have the ability to add additional first class components at this point.  The tooling is compatible with extension components as I described above, however.  That said, there's no reason why we couldn't add this capability at some point.  Please file a JIRA against SwitchYard if you'd like to see it.

              No problem with tooling if it was ok in runtime. I thought that may be tooling should make some changes while packaging deployment and it does not because it does not know my component. Now I see it should be ok, even if tooling says that it isn't.

               

              I have still no progress with enabling SY to use my binding...

              • 4. Re: Custom switchyard binding
                rcernich

                Hey Viktor,

                 

                Here's what you need to do, but keep in mind these are internal APIs and subject to change.

                 

                For your runtime component, you will need to add a "module" element for your component to the list of modules in the SwitchYard subsystem configuration in the JBoss configuration file (e.g. standalone.xml).  You will also need to add your module to the depenncy list in org/switchyard/main (not sure about this one).

                 

                As for the tools, you will need to create an Eclipse plugin for your component.  This plugin should provide an XSD catalog extension (to resolve the schema defining your binding configuration), as well as the following SwitchYard extensions:

                • org.switchyard.tools.ui.switchYardComponent/component - defines the Maven dependencies required for using your component.
                • org.switchyard.tools.ui.editor.editorExtension/bindingExtension - adds support for your binding to the tools.

                 

                You'll have to look at the source to figure stuff out as this is all undocumented and unsupported, but if you're willing to live on the edge, that should be enough to get you going.

                 

                Hope that helps,

                Rob

                1 of 1 people found this helpful
                • 5. Re: Custom switchyard binding
                  mageshbk

                  Hi Viktor,

                   

                  Have you added the component in the jboss subsytem configuration as described here:

                   

                  https://community.jboss.org/wiki/SwitchYardOnAS7

                  1 of 1 people found this helpful
                  • 6. Re: Custom switchyard binding
                    synclpz

                    Hi Magesh, Rob,

                     

                    yes, added a <module> with implClass... but still no effect:

                     

                    No registered service found for {urn:com.example.switchyard:switchyard-example:1.0}TestMYAPPBean/MYAPPServiceRef

                     

                    Still investigating what's wrong...

                    • 7. Re: Custom switchyard binding
                      kcbabo

                      You can enable DEBUG logging for org.switchyard.deploy to see if your activator is being picked up during deployment.  The following line will print out all activators used for a given application during deployment:

                      https://github.com/jboss-switchyard/core/blob/master/deploy/base/src/main/java/org/switchyard/deploy/internal/Deployment.java#L122

                       

                      I expect what's happening here is your custom configuration element is not being discovered in the first place.  That could be your Marshaller implementation is not being discovered (bad configuration in component or class path issue) or the Marshaller implementation itself is incorrect.  If you attach the component code or point to a repo where we can find it then we can provide more help.

                      • 8. Re: Custom switchyard binding
                        synclpz

                        My fault, I thought I enabled DEBUG logging for SY, but I did not. After enabling all I got is:

                         

                        17:52:20,688 DEBUG [org.switchyard] (MSC service thread 1-4) Initialized component com.myapp.switchyard.component.myapp.deploy.MyAppComponent@2a227194

                         

                        but no "Registered activation type".

                         

                        EDIT:

                         

                        Seems like I found the issue, its incorrectly packaged jar with component! Need some time for exploration...

                         

                        Message was edited by: synclpz

                        • 9. Re: Custom switchyard binding
                          kcbabo

                          That would mean that your component's config marshaller is not found when processing the deployment descriptor.  IOW, the config layer doesn't parse the binding in switchyard.xml and therefore the activator is not added to the deployment.  We need to see your component in order to provide more help.

                          • 10. Re: Custom switchyard binding
                            synclpz

                            The problem resolved, resolution:

                             

                            1. After packaging my component as JBoss module I haven't added <module> to switchyard subsystem in standalone.xml

                            2. The jar file was incorrectly packaged, I've just exported it via eclipse and get wrong directory structure in it:

                            /

                            --META-INF/

                            ----MANIFEST.MF

                            --resources/

                            ----org/

                            ------switchyard/...

                            --com/

                            ----myapp/..

                             

                            and so on. The structure should be:

                             

                            /

                            --META-INF/

                            ----MANIFEST.MF

                            ----services/ ...

                            --org/

                            ----switchyard/...

                            --com/

                            ----myapp/...

                             

                             

                            Now debugging. For other questions I think posting to another thread would be a good option.