64.3. Java DSL を使用


次の例では、com.example.customerservice パッケージで設定された soap の名前付き DataFormat を使用して JAXBContext を初期化します。2 番目のパラメーターは ElementNameStrategy です。ルートは通常のオブジェクトと例外をマーシャリングできます。(以下は SOAP Envelope をキューに送信するだけです。Web サービスプロバイダーは、実際には SOAP 呼び出しのためにキューをリッスンする必要があります。この場合は、SOAP リクエストになります。リクエスト応答が必要な場合は、次の例を確認してください。)

SoapJaxbDataFormat soap = new SoapJaxbDataFormat("com.example.customerservice", new ServiceInterfaceStrategy(CustomerService.class));
from("direct:start")
  .marshal(soap)
  .to("jms:myQueue");
注記

また、
参照してください。SOAP データ形式は、JAXB データフォーマットから継承するもので、ほとんどの設定はここでも適用されます。

64.3.1. SOAP 1.2 の使用

Camel 2.11 以降

SoapJaxbDataFormat soap = new SoapJaxbDataFormat("com.example.customerservice", new ServiceInterfaceStrategy(CustomerService.class));
soap.setVersion("1.2");
from("direct:start")
  .marshal(soap)
  .to("jms:myQueue");

XML DSL を使用する場合は、<soapjaxb> 要素に設定できる version 属性があります。

    <!-- Defining a ServiceInterfaceStrategy for retrieving the element name when marshalling -->
    <bean id="myNameStrategy" class="org.apache.camel.dataformat.soap.name.ServiceInterfaceStrategy">
        <constructor-arg value="com.example.customerservice.CustomerService"/>
    <constructor-arg value="true"/>
    </bean>

Camel ルートで および

<route>
  <from uri="direct:start"/>
  <marshal>
    <soapjaxb contentPath="com.example.customerservice" version="1.2" elementNameStrategyRef="myNameStrategy"/>
  </marshal>
  <to uri="jms:myQueue"/>
</route>
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る