Jaxws и верблюжий маршрут в рамках servicemix - PullRequest
5 голосов
/ 01 марта 2011

Я бы хотел сделать что-то вроде этого:

<jaxws:endpoint id="AbcEsbHTTPEndpoint" 
    implementor="com.abc.esb.ABCWSServiceImpl"
    address="/ABCWSServiceService"
    wsdlLocation="wsdl/ABCWSService.wsdl"
    endpointName="e:ABCWSService"
    serviceName="s:ABCWSServiceService"
    xmlns:e="http://com.abc.esb/abcesb/services/ABCWSService"
    xmlns:s="http://com.abc.esb/abcesb/services/ABCWSService">
</jaxws:endpoint>


<camelContext xmlns="http://camel.apache.org/schema/spring">
    <route>
        <from uri="cxf:bean://ABCWSServiceService"/>
        <to uri="cxf:bean:decodeClient"/>
    </route>
</camelContext>    

<jaxws:client id="decodeClient" 
    address="http://ESB-DEV1:9081/abcesb/services/Decoder"
    wsdlLocation="http://ESB-DEV1:9081/abcesb/services/Decoder?wsdl" 
    serviceClass="com.abc.esb.ABCServiceInterface" 
    abstract="true" > 
</jaxws:client>  

Я не понимаю, как настроить верблюжий маршрут от <jaxws:endpoint> до <jaxws:client> Какой синтаксис использовать ??Я знаю, что вы можете использовать <cxf:cxfEndpoint> , но я не хочу использовать это, если мне не нужно.

Я знаю, как это сделать с JBI, но я 'Я хочу развернуть это в servicemix, используя пакет OSGI, а не JBI.

Ответы [ 2 ]

2 голосов
/ 29 октября 2013

jaxws:client, который есть в вашей конфигурации , является конечной точкой, как и jaxws:endpoint и может быть подключен с использованием компонента bean :

<camelContext xmlns="http://camel.apache.org/schema/spring">
    <route>
        <from uri="bean:AbcEsbHTTPEndpoint"/>
        <to uri="bean:decodeClient"/>
    </route>
</camelContext>

Обычно есть необходимость сделать что-то промежуточное - скажем, чтобы каким-то образом адаптировать сообщение - но вышеупомянутое приведет к маршрутизации как минимум.

0 голосов
/ 02 марта 2011

См. Некоторые примеры cxf из примеров в верблюжьем выпуске.Они показывают, как настроить cxf, а не как jbi.

...