1

私はApache CamelとCXFを初めて使用し、基本認証を必要とするリモートWSを照会し、SoapActionヘッダーを指定するためのルートを作成しようとしています。spring-ws コンポーネントで実現しましたが、cxf コンポーネントでも同じことができないかと考えていました。

私の現在の構成は次のとおりです。

RouteBuilder

from("file:src/test/resources/data?noop=true")
    .to("xquery:transform/search.xquery")
    .to("cxf:-----")
    .to("log:TestApp");

コンジットについて何か読んだことがありますが、現在のキャメル コンテキストでコンジットを構成する方法がわかりません。

キャメルコンテキスト
<camel:camelContext xmlns="http://camel.apache.org/schema/spring">
    <package>my.package</package>
</camel:camelContext>

前もって感謝します

4

1 に答える 1

2

これは、Camel HTTP コンポーネントを使用して実現できます。

http://server.com?authMethod=Basic&authUsername=user&authPassword=パスワード

ただし、CXF が提供する機能を利用したい場合もあります。

camel で CXF Bean をセットアップしてから、HTTP コンジットをセットアップして基本認証を提供できます。

http://cxf.apache.org/docs/client-http-transport-include-ssl-support.html#ClientHTTPTransport%28includeSSLsupport%29-BasicAuthentication

<conduit name="https://localhost:.*""
   xmlns:sec="http://cxf.apache.org/configuration/security"
   xmlns="http://cxf.apache.org/transports/http/configuration">
   <authorization>
      <sec:UserName>myuser</sec:UserName>
      <sec:Password>mypasswd</sec:Password>
      <sec:AuthorizationType>Basic</sec:AuthorizationType>
   </authorization>
 </conduit>

HTTP コンジットは、'name' パラメーターを使用して Camel CXF Bean にリンクします。上記のように URL に設定するか、サービスに一致する URI に設定するためのドキュメントを確認してください。

ありがとう、ヨゲシュ

于 2012-12-12T04:44:04.673 に答える