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>

Reply via email to