23.2. 対話型 Web サービス


Seam では SOAP 要求と応答のメッセージの両方で SOAP ヘッダーエレメントを使い、 その対話 ID を消費者側からサービスへ、 またサービスから消費者側へと伝えています。 以下は対話 ID を含む Web サービス要求の一例です。
<soapenv:Envelope 
         xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
         xmlns:seam="http://seambay.example.seam.jboss.org/">
                  
  <soapenv:Header>
    <seam:conversationId xmlns:seam='http://www.jboss.org/seam/webservice'>
      2
    </seam:conversationId>
  </soapenv:Header>
  
  <soapenv:Body>
    <seam:confirmAuction/>
  </soapenv:Body>
  
</soapenv:Envelope>    

Copy to Clipboard Toggle word wrap
上記の SOAP メッセージには conversationId エレメントが含まれ、 要求の対話 ID を含んでいます。 この例の場合は 2 です。 Web サービスを使う Web サービスのクライアントは多種多様で、なおかつさまざまな言語で記述されているため、 ひとつの対話のスコープ内で使われるそれぞれの Web サービス間の対話 ID の伝播を実装するのは開発者の責任となります。
conversationId ヘッダーエレメントは http://www.jboss.org/seam/webservice の名前空間に適したものでなければいけません。 そうでないと、 Seam はその要求から対話 ID を読み取ることができなくなります。 上記の要求メッセージに対する応答の例を示します。
<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>
  <env:Header>
    <seam:conversationId xmlns:seam='http://www.jboss.org/seam/webservice'>
      2
    </seam:conversationId>
  </env:Header>
  <env:Body>
    <confirmAuctionResponse 
       xmlns="http://seambay.example.seam.jboss.org/"/>
  </env:Body>
</env:Envelope>
Copy to Clipboard Toggle word wrap
応答メッセージには要求と同じ conversationId エレメントが含まれているので留意してください。

23.2.1. 推奨される方法

Web サービスはステートレスセッション Bean または POJO で実装する必要があります。そのため 対話型 Web サービスには対話型 Seam コンポーネントの外観に Web サービスを実装させることをお勧めします。
Web サービスをステートレスセッション Bean で記述する場合は、 それに @Name アノテーションを付与することで Seam コンポーネントに変換することも可能です。 これにより Web サービスのクラス自体で Seam のバイジェクションやその他の機能を使用することができます。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat