The one with the "${CXFServer} is easy to fix. Simply use address="/invoice/services". This tells CXF to use the Servlet transport. In OSGi this works using the HTTPService.
Christian 2016-03-10 19:53 GMT+01:00 Ranx <brad.john...@mediadriver.com>: > Christian, > > Thanks. I'll look into that. Right now all my services are defined in > separate bundles and exported to the registry and have interfaces with > REST/SOAP annotations that I expose via an API gateway. That works fairly > well but it obviously couples the deployment. > > Part of the problem is with blueprint being a bundle internal only is that > one can't do easy runtime modifications. Whereas if the specification has > external/internal deployed sections it could make this much better. In the > same way that we do cfg files we could also have an external/internal > blueprint for a bundle. In fact, with properties exposed that way cfgs > wouldn't even be necessary or would be duplicated. > > As an example, if I have a webservices API gateway with the following I > have > to replicate a lot of endpoint set up and if I decide I don't want to > deploy > that service there but have it on another machine I can't do that without > recompiling. Putting a raw blueprint file in the etc directory feels like > cheating but maybe that's the answer to some of this. > > <reference id="myInoviceService" interface="com.foo.InvoiceService"/> > <reference id="myInventoryService" interface="com.foo.InventoryService"/> > > <cxf:rsServer id="invoiceCxfRs" address="${CXFServer}/invoice/resources" > serviceClass="com.foo.InvoiceService" loggingFeatureEnabled="true" > loggingSizeLimit="20"> > <cxf:providers> > <bean > class="org.apache.cxf.jaxrs.provider.json.JSONProvider"> > <property name="dropRootElement" > value="true" /> > <property name="supportUnwrapped" > value="true" /> > </bean> > </cxf:providers> > </cxf:rsServer> > <cxf:cxfEndpoint id="invoiceSoapCxf" > address="${CXFServer}/invoice/services" > serviceClass="com.foo.invoice.services.api.InvoiceDocumentService" > loggingFeatureEnabled="true" loggingSizeLimit="20"> > <cxf:binding> <soap:soapBinding version="1.2" /> > </cxf:binding> > </cxf:cxfEndpoint> > > ...set up other endpoints... > > <bean id="serviceInvoker" > class="com.svm.esb.financial.webservice.ServiceInvoker"/> > > > <camelContext xmlns="http://camel.apache.org/schema/blueprint"> > > > <route> > <from uri="cxfrs:bean:invoiceCxfRs" /> > <log message="Received request: ${body}" /> > <log message="Received headers request: > ${headers}" /> > <bean ref="serviceInvoker" > method="invokeServiceFromREST" /> > </route> > > > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/CXF-cross-cutting-concerns-tp5778798p5778886.html > Sent from the Camel - Users mailing list archive at Nabble.com. > -- -- Christian Schneider http://www.liquid-reality.de <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.liquid-reality.de> Open Source Architect http://www.talend.com <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.talend.com>