Interstage Application Server SOAPサービス ユーザーズガイド
目次 索引 前ページ次ページ

第4章 Messaging方式のアプリケーションの実装> 4.1 受信アプリケーションの作成

4.1.5 SOAPヘッダーの取り扱いについて

■Webサービス・コンテナによるSOAPヘッダーの処理

 高信頼性Webサービス機能では、SOAP電子署名やXML暗号化の情報をSOAPメッセージに付加するために、SOAPヘッダー要素(SOAPHeaderElement)を使用しています。
 このSOAPヘッダー要素(SOAPHeaderElement)の扱いは、Webサービス情報の登録時に“処理済HeaderElment”で指定できます。“削除する”を選択すると、受信アプリケーションの呼び出し前に高信頼性Webサービス機能で使用しているSOAPヘッダー要素(SOAPHeaderElement)は削除されます。

■mustUnderstandの処理

 Webサービスに宛てられたSOAPヘッダー要素(SOAPHeaderElement)のmustUnderstand属性に、trueまたは1が指定されていた場合、以下のようにSOAPヘッダー要素(SOAPHeaderElement)が処理されます。

  1. まずそのSOAPHeaderElementを解釈できるかを確認し、
  2. 解釈できない場合は、定められたFaultを発生させる
  3. 解釈できた場合は、それ以外の必要な処理を行う。

 SOAPヘッダー要素(SOAPHeaderElement)のmustUnderstand属性がtrueまたは1であるかは、以下のメソッドで判断できます。

 
 javax.xml.soap.SOAPHeaderElement.getMustUnderstand()

 Webサービス情報の、“処理済HeaderElment”で“削除しない”を設定した場合、すでに高信頼性Webサービス機能によって解釈処理が行われたSOAPヘッダー要素(SOAPHeaderElement)も、受信アプリケーションが受け取るSOAPメッセージに含まれています。
 javax.xml.soap.SOAPHeaderElementオブジェクトを以下のクラスにキャストし、isProcessedメソッドを使用することで、SOAPヘッダー要素(SOAPHeaderElement)がすでに解釈処理されているかどうかを判定できます。

●パッケージ名:com.fujitsu.interstage.soapx.message

クラス名

メソッド

説明

SOAPHeaderElement
implements
javax.xml.soap.SOAPHeaderElement

public boolean isProcessed()

高信頼性Webサービス機能によってSOAPヘッダー要素(SOAPHeaderElement)がすでに処理済みであるかどうかを返します。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005