この章では、WSDLおよびSOAPファイルを使用してOracle WebCenter Content Serverを管理することによって、これらのファイルを使用するクライアント・アプリケーションにOracle WebCenter Contentを統合する方法について説明します。また、コンテンツ・サーバーの機能にアクセスするための統合テクノロジを提供するWSDLジェネレータ・コンポーネントの使用方法についても説明します。
この章の内容は次のとおりです。
コンテンツ・サーバーで使用できるWebサービスの一般的な情報については、「Webサービスの概要」を参照してください。この章で説明されているWebサービスの使用方法は、Oracle Universal Content Management 10gで導入されました。WebCenter Content Webサービスを、セキュリティが構成され、Security Assertion Markup Language (SAML) (Oracle WebCenter Content 11gで導入されました)がサポートされている状態で使用する場合は、「統合のためのWebCenter Content Webサービスの構成」を参照してください。
Webサービスをいずれの方法で使用した場合でも、セキュリティのためにOracle Web Services Manager (Oracle WSM)を使用することができます。Oracle WSMの詳細は、『Webサービスの管理』のWebサービス管理の概要に関する項を参照してください。
Web Services Definition Language (WSDL)およびSOAP (Simple Object Access Protocol)ファイルを使用して、クライアント・アプリケーションからコンテンツ・サーバーを管理できます。SOAPは、Webサービス・リクエストおよびレスポンス・メッセージをネットワーク経由で送信する前にそれらの中の情報をエンコードするための、軽量のXMLベース・メッセージング・プロトコルです。
WSDLジェネレータ・コンポーネントWsdlGenerator(これは、コンテンツ・サーバーにデフォルトでインストールされ有効化されます)は、コンテンツ・サーバーのサービスのためのWSDLを生成します。WSDLを取得し、それをAPIにプラグインして、コンテンツ・サーバーで使用するためのWebサービスを作成できます。
一部のSOAP機能は、コアのコンテンツ・サーバーに組み込まれています。SOAPの使用にWSDLジェネレータ・コンポーネントが不可欠というわけではありません。管理者は、必要に応じて、SOAPでコンテンツ・サーバーへのサービス・コールを記述することができます。WSDLジェネレータを使用すると、既存のクライアント・アプリケーションを柔軟に変更できるようになります。
WebCenter Contentには、WebCenter Content IDCService (Internet Distributed Content Service)を公開するWSDL 1.1実装があり、WebCenter Content IDCServiceは、コンテンツ・サーバーのすべての機能を拡張します。IDCServiceを使用して、次のいずれのタスクも実行できます。
WSDLファイルを使用してWebCenter ContentおよびSOAPにマップし、WebCenter Content内のコンテンツおよびコンテンツ管理機能にアクセスし、コンテンツ管理機能をWebサービスとしてデプロイすることができます。または、SOAPでコンテンツ・サーバーへのサービス・コールを記述することができます。
Webサービスのコアとなる実現技術は、次のようなものです。
eXtensible Markup Language (XML)は、すべてのWebサービス・テクノロジの基礎を提供する一まとまりの仕様です。XML構造および構文を基礎として使用することで、様々なプログラミング言語、ミドルウェアおよびデータベース管理システム間でデータを交換することが可能になります。
XML構文には、インスタンス・データ、型付け、構造、およびデータに関連するセマンティック情報が組み込まれます。XMLでは、データは独立して記述され、データをソフトウェア・システムまたはプログラミング言語にマップするための情報も提供されます。この柔軟性があるため、どのソフトウェア・プログラムでもWebサービスにマップできます。
Webサービスが起動されると、基礎となるXML構文により、交換されたデータのためのデータ・カプセル化および送信フォーマットが提供されます。XML要素および属性は、データの型と構造に関する情報を定義します。XMLは、データをモデリングする機能を提供し、プログラミング言語(Java、C#、Visual Basicなど)、データベース管理システムまたはソフトウェア・アプリケーションに固有の構造を定義します。Webサービスは、XML構文を使用して、データがどのように表現され、データがどのように送信され、サービスがどのように参照アプリケーションと対話するのかを指定します。
Web Services Description Language (WSDL)は、Webサービスに公開されるインタフェースを提供します。WSDLレイヤーにより、Webサービスを、基礎となるプログラムおよびソフトウェア・システムにマップできるようになります。WSDLファイルは、Webサービスへの接続方法とその使用方法が記述されたXMLファイルです。
Simple Object Access Protocol (SOAP)は、Webサービス・インタフェースがネットワーク経由で相互に通信するためのコンテンツ・サーバー通信を提供します。SOAPは、Webサービスへのアクセスに使用されるXMLベースの通信プロトコルです。Webサービスは、XMLドキュメント内にカプセル化されたSOAPパケットを使用して、リクエストを受信し、レスポンスを返します。
Universal Description Discovery and Integration (UDDI)サービスは、Webサービス・インタフェースの格納と取得のためのレジストリおよびリポジトリ・サービスを提供します。UDDIは、Webサービスの登録および検索のためのパブリックまたはプライベートのXMLベース・ディレクトリです。
コンテンツ・サーバーは現在、いずれのパブリックまたはプライベートUDDIソースにも公開されません。ただし、このことにより、コンテンツ・サーバーを、Webサービスを使用する他のアプリケーションと統合できなくなるわけではありません。
DIMEは、任意のタイプとサイズの、アプリケーションで定義された1つ以上のファイル・コンテンツ・グループを単一のメッセージ構成にカプセル化するために使用できる軽量のバイナリ・メッセージ・フォーマットです。コンテンツのアップロードまたはダウンロードで、このフォーマットを使用できます。ペイロードは、SOAPメッセージおよび1つ以上のファイル・コンテンツ・グループで構成されています。
XML、WSDL、SOAPおよびUDDIテクノロジは、Webサービス・プロトコル・スタック上のレイヤーとして連携して機能します。図32-1に示すように、Webサービス・プロトコル・スタックは、次のレイヤーで構成されています。
アプリケーション間のトランスポート・レイヤー(HTTP)
一般的な通信方法を提供するメッセージング・レイヤー(XMLおよびSOAP)
特定のWebサービスへのパブリック・インタフェースを記述するサービス記述レイヤー(WSDL)
Webサービス・インタフェースの格納と取得のためのレジストリおよびリポジトリ・サービスを提供するサービス検出レイヤー(UDDI)
注意:
トランスポート・レイヤーでは、いくつかのプロトコル(HTTP、SMTP、FTP、BEEPなど)が使用できますが、HTTPプロトコルがもっとも一般的に使用されています。WSDLジェネレータ・コンポーネントは、トランスポート・レイヤーとしてHTTPプロトコルに依存します。
これらのテクノロジ間の接続を理解しやすくするため、単純な例えで考えてみましょう。つまり、HTTPを電話回線(アプリケーション間のトランスポート)として捉え、UDDIを電話帳(開発者はUDDIレジストリを参照して登録済のサービスを検索できます)として捉えます。この例えでは、SOAPは人々が電話で話す声(情報の交換)、XMLは人々が話す言語(データ交換の基礎となる構造)と見なすことができます。電話の例えで続けるなら、WSDLは、特定のWebサービスをコールするための電話番号になります(もちろん、WSDLには使用可能な機能やデータ型などの情報が含まれているため、WSDLは単なる電話番号以上のものです)。
Webサービスは、実行可能ファイルではありませんが、開発環境内でデータを交換します。そのため、Webサービスは、データを交換するプログラム間で通信を実行するアプリケーション・サーバーまたはソフトウェア・パッケージと情報を交換する手段となります。
図32-2は、コンテンツ・サーバー・アプリケーションのためのWebサービス実装アーキテクチャを示しています。このアーキテクチャのプライマリ値は、コンテンツ・サーバーの機能において保持されます。Webサービスは、WSDLジェネレータを通じてコンテンツ・サーバーにアクセスし、公開されたコンテンツ・サーバー・サービスを使用してアクションを実行し、ユーザーが使用するWebサービスとコンテンツ・サーバー間のデータ・トランザクションを提供します。
Microsoft .NET製品(.NETプラットフォーム、.NET Framework、Visual Studio .NETなど)はすべて、XMLスキーマ、WSDLおよびSOAP仕様をサポートしています。
.NETプラットフォームは、開発者がXML Webサービスおよびアプリケーションを構築できるようにするプログラミング・モデルとして設計されています。このプラットフォームは、XML Webサービスおよびアプリケーションを統合、実行および管理する一連のサービスを提供します。
.NET Framework製品は、開発者がWebサービスおよびアプリケーションを構築してデプロイすることを可能にします。これは、Webサービスを統合するための構造化環境を提供し、一般的な言語ランタイムと統合クラス・ライブラリで構成されています。また、これには、ASP .NETサーバーが組み込まれています。
Visual Studio .NET製品は、開発者がXMLベースのWebサービス仕様に従ってアプリケーション・ソフトウェアを作成するためのツールを提供します。
.NETアーキテクチャを使用して、Webサービスの開発とデプロイは1つのステップとして統合されます。.NET言語で作成されたすべてのプログラムはWebサービスとして機能するように設計されているため、.NETサーバーは、プログラムをWebサービスとして作成およびデプロイすることが可能です。
SOAPは、次のパーツで構成されている、XMLベースのメッセージング・プロトコルです。
メッセージの内容とその処理方法を定義するエンベロープ
アプリケーション・データ型を定義する一連のエンコーディング・ルール
リモート・プロシージャ・コールおよびレスポンスを表すための規則
SOAP統合を使用すると、Java API (IdcCommand
)を使用してコンテンツ・サーバー・サービスを実行するための標準化されたインタフェースが提供され、コンテンツ・サーバーによって管理されるXMLおよび非XMLコンテンツが提供されます。
SOAPは、データ送信にHypertext Transfer Protocol (HTTP)を使用するため、Web経由で起動でき、プラットフォームと言語に依存しない方法でネットワーク経由でコンテンツにアクセスできるようにします。
SOAPを使用してコンテンツ管理機能にWebサービスとしてアクセスすることで、アプリケーション間でリアルタイムにプログラムによる対話を行うことができ、ビジネス・プロセスの統合が可能になり、情報交換を容易に行えます。
注意:
SOAPクライアント実装を開発する場合は、クライアントAPIコードでチャンクを無効にしてください。
Webサービスは、XMLラッパーに含まれており、かつWSDL仕様で定義されているモジュラ・コンポーネントです。UDDI Webベース・レジストリ・システムは、それらのサービスの検索に使用されます。
ヒント:
.NETサーバーは、WSDLをサポートし、SOAP Toolkitと統合できますが、SOAPパケットがリモート・プロシージャ・コール(RPC)を送信するように指定する必要があります。デフォルトでは、SOAPメッセージは、RPCスタイルのSOAPメッセージとしてではなく、ドキュメント・スタイルのSOAPメッセージとして評価されます。SOAP Toolkitクライアントを.NETで開発されたWebサービスとともに使用すると、WSDLドキュメントの読取りエラーが返されます。SOAP Toolkitで、生成されたWSDLを読み取り、.NET Webサービスをコールできるようにするには、Webサービス・クラスでSoapRpcService()
属性を指定する必要があります。
Java SOAPクライアントでは、表32-1に示されているコマンドライン・パラメータを使用できます。
表32-1 Java SOAPクライアントのコマンドライン・パラメータ
パラメータ | 説明 |
---|---|
|
サーバー設定(ホストやポートなど)を含む構成ファイル |
|
コンテンツ・サーバーに渡すSOAPリクエストを含むXMLファイル |
|
アップロードするプライマリ・ファイルのファイル名 |
|
アップロードする代替ファイルのファイル名(オプション) |
|
リクエストおよびレスポンス・データを含むファイルのファイル名(オプション) |
SOAPインタフェースを使用して、様々なコンテンツ・サーバーのIdcCommand
サービスを実行できます。ユーザーIDには、コマンドを実行するための適切な権限が必要です。管理者アクセスを必要とするコマンドもあれば、書込み権限のみを必要とするコマンドもあります。
WSDLジェネレータ・コンポーネントは、コンテンツ・サーバーにデフォルトでインストールされ有効化されます。サービスをコールするには、これを有効な状態にしておく必要があります。使用可能なサービスおよび必須パラメータのリストについては、『Oracle Fusion Middleware Oracle WebCenter Contentサービス・リファレンス』のOracle WebCenter Contentサービスのリストに関する項を参照してください。
SOAPリクエストは、HTTPトランスポート・プロトコルを使用して送信されるXMLベースのリモート・プロシージャ・コール(RPC)です。SOAPパケットのペイロードは、実行されるコールと渡されるパラメータを指定するXMLドキュメントです。
SOAPリクエストのHTTPヘッダーでは、次のエントリが必要です。
Content-Type: text/xml; charset="utf-8"
次のSOAPAction
ヘッダーが推奨されますが、必須ではありません。
SOAPAction: "http://www.oracle.com/IdcService"
SOAPメッセージのボディ内では、ドキュメントの各部分の要素および属性名を修飾するためにXMLネームスペースが使用されます。要素名は、グローバルとする(SOAPメッセージ全体で参照されます)ことも、ローカルとすることもできます。ローカルの要素名は、ネームスペースによって提供され、その名前は、それが存在するメッセージの特定部分で使用されます。そのため、SOAPメッセージは、ネームスペースを使用して、メッセージの別の部分の要素名を修飾します。アプリケーション固有のネームスペースは、アプリケーション固有の要素名を修飾します。ネームスペースはまた、エンベロープのバージョンとエンコーディング・スタイルも識別します。
コンテンツ・サーバーは、SOAPコンテンツのスキーマと許容されるタグを説明する、idc
と呼ばれるネームスペースを定義します。
SOAPノードは、SOAPバインディングを通じて基礎となるプロトコルによって提供されるサービスにアクセスするためのルールに従ってSOAPメッセージを処理するエンティティです。したがって、メッセージの処理には、基礎となるサービスへのマッピングが含まれます。SOAP仕様は、SOAPメッセージの部分と、メッセージの各部分を処理するソフトウェア・ハンドラ間の相関関係を定義します。
次のノードは、サービス・リクエストで必要になったり、レスポンスで返されたりする可能性があります。
注意:
コンテンツ・サーバー・サービスは、リクエストにおいてデータが指定されている場所については柔軟に対応します。fieldノードにデータ・フィールドを指定し、かつそれがdocument属性と想定される(またはその逆の)場合でも、サービスは、データを正しく処理します。レスポンスは、データを正しいノードに配置します。
IDCネームスペース内のメイン・ノードである<idc:service>
ノードには、次の要件があります。
リクエストが処理されるためには、このノードが存在している必要があります。
必須属性IdcService
は、リクエストしているサービスを定義します。
<idc:service>
のサブノードでは、そのタグ内にネームスペースが含まれている必要はありません。
たとえば、<idc:document>
ではなく、<document>
を使用できます。ただし、子ノードでネームスペース識別子を定義する場合、serviceタグ内に指定されている識別子と一致させる必要があります。
次の例は、PING_SERVER
サービス・リクエストが指定された<idc:service>
ノードを示しています。
例32-1 IDCネームスペースにおけるserviceノード
<idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="PING_SERVER"> </idc:service>
<document>
ノードには、すべてのコンテンツ・アイテム情報が含まれており、このノードは、すべてのデータ・ノードの親になります。
コンテンツ・アイテムに対して有効な属性は、特定のコンテンツ・サーバーによって定義されます。たとえば、dID
、dDocTitle
およびdDocType
は、共通属性です。<document>
ノードには、次のルールが適用されます。
カスタムのコンテンツ・アイテム情報(xSpec
など)は、それがメタデータとして定義されている場合は有効です。
すべての既知のdocumentフィールドは、属性として使用できます。
次の例は、CHECKOUT_BY_NAME
サービスを使用する<document>
ノードを示しています。
例32-2 IDC serviceノード内のdocumentノード
<idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="CHECKOUT_BY_NAME"> <idc:document dDocName="soap_sample"> </idc:document> </idc:service>
<user>
ノードには、すべてのユーザー情報が含まれます。<user>
ノードには、次のルールが適用されます。
ユーザーに対して有効な属性は、特定のコンテンツ・サーバーによって定義されます。たとえば、dName
、dFullName
およびdEmail
は、共通属性です。
カスタムのユーザー情報は、それがメタデータとして定義されている場合は有効です。
すべての既知のuserフィールドは、属性として使用できます。
次の例は、GET_USER_INFO
サービス・リクエストのユーザーを指定する<user>
ノードを示しています。
例32-3 IDC serviceノード内のuserノード
<idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_USER_INFO"> <idc:user dUser="sysadmin"> </idc:user> </idc:service>
<optionlist>
ノードには、任意のオプション・リストが含まれます。name
属性は、オプション・リストの名前を指定します。各<option>
サブノードには、<optionlist>
ノード内の値が含まれます。
次の例は、ロケール値を持つ<option>サブノードがある<optionlist>
ノードを示しています。
例32-4 ロケールのoptionlistノード
<idc:optionlist name="Users_UserLocaleList"> <idc:option> English-US </idc:option> </idc:optionlist>
<option>
サブノードは、<optionlist>
ノード内に指定されます。option
属性は、オプション・リストのオプションの名前を指定します。
次の例は、dDocType
値が指定された<option>
ノードを示しています。
例32-5 optionlistノードのoptionサブノード
<idc:optionlist name="dDocType"> <idc:option>ADACCT</idc:option> <idc:option>ADHR</idc:option> <idc:option>ADSALES</idc:option> </idc:optionlist>
<resultset>
サブノードは、<document>
または<user>
ノード内に指定することができます。このサブノードには、リクエストまたはレスポンス内のResultSetの情報が含まれます。name
属性はResultSetの名前を指定します。
次の例では、リビジョン履歴を含むResultSetの<resultset>
サブノードを指定します。
例32-6 リビジョン履歴のresultsetサブノード
<idc:resultset name="REVISION_HISTORY"> <idc:row dFormat="text/plain" dInDate="4/12/02 1:27 PM" dOutDate="" dStatus="RELEASED" dProcessingState="Y" dRevLabel="1" dID="6" dDocName="stellent" dRevisionID="1"> </idc:row> </idc:resultset>
<row>
サブノードは、<resultset>
サブノード内で指定されます。<resultset>サブノードは、複数の<row>サブノードを持つことができます。各<row>サブノードは、ResultSet内の行を指定します。
有効な属性は、特定のコンテンツ・サーバーによって定義されます。有効な属性は、<document>
または<user>
ノード内の属性として表示できるものと同じフィールドです。
次の例では、user属性のResultSet内の行を指定します。
例32-7 resultsetサブノードのrowサブノード
<idc:resultset name="UserAttribInfo"> <idc:row dUserName="jsmith" AttributeInfo="role,contributor,15"> </idc:row> </idc:resultset>
<field>
サブノードは、<document>
、<user>
または<row>
ノード内に指定することができます。name
属性は、フィールドの名前を指定します。<field>
サブノードは多くの場合、refreshSubjects
やdSubscriptionID
などのデータを表します。
<field>
サブノードは、ユーザーが構成できるドキュメントまたはユーザー・メタデータを表すことができます。または、xComments
などのカスタム・メタデータを表すこともできます。次の例では、サブスクリプションIDデータを表すfieldサブノードを指定します。
Field Node to Represent Metadata <idc:field name="dSubscriptionID"> stellent </idc:field>
<field>
サブノードの別の使用法としては、次の例に示されているように、QueryText
やOriginalQueryText
などのフィールドの検索結果値を渡すことがあります。
Field Subnode to Pass a Value <idc:field name="QueryText"> dDocType <Substring> "ADSALES&" </idc:field>
左山カッコ(<
)や右山カッコ(>
)などの特殊文字をWebCenter Contentに渡すときは、例32-2に示すXMLエンコーディング・フォーマットを使用する必要があります。
表32-2 特殊文字のフォーマット
標準フォーマット | XMLエンコーディング・フォーマット |
---|---|
|
|
|
|
|
|
|
|
|
|
注意:
QueryText
やOriginalQueryText
などの一部の検索結果値は、レスポンス内でURLエンコードされます。
(汎用的な問合せ構文を使用した)コンテンツ・アイテム問合せの場合は、いずれのフォーマットでもコンテンツ・サーバーに文字列を渡すことができます。次の例では、文字列は標準フォーマットで指定されています。
例32-8 標準フォーマットの文字列が指定されたパラメータ
QueryText=dDocType <Substring> "ADSALES"
次の例では、文字列はXMLエンコード・フォーマットで指定されています。
例32-9 XMLエンコードの文字列が指定されたパラメータ
<idc:field name="QueryText"> dDocType <Substring> `ADSALES` </idc:field>
SOAPレスポンス/リクエストを使用したサービス・コールによって、SOAPリクエストでコンテンツ・サーバー・サービスを実行できます。使用可能なサービスおよび必須パラメータのリストについては、『Oracle Fusion Middleware Oracle WebCenter Contentサービス・リファレンス』のOracle WebCenter Contentサービスのリストに関する項を参照してください。
次のIdcCommandサービスは、SOAPリクエストの例です。
IdcCommand | 説明 |
---|---|
|
このサービスは、サーバーへの接続が存在するかどうかを評価します。「サーバーのPing」を参照してください。 |
|
このサービスは、システムに新しいユーザーを追加します。「新しいユーザーの追加」を参照してください。 |
|
このサービスは、既存のユーザーを編集します。「既存のユーザーの編集」を参照してください。 |
|
このサービスは、ユーザー・リストを取得します。「ユーザー情報の取得」を参照してください。 |
|
このサービスは、既存のユーザーを削除します。「ユーザーの削除」を参照してください。 |
|
このサービスは、コンテンツ・サーバーによって制御されるチェックインを実行します。「コンテンツ・アイテムのチェックイン」を参照してください。 |
|
このサービスは、指定されたコンテンツ・アイテムの最新バージョンをロック済としてマークします。「コンテンツ・アイテムのチェックアウト」を参照してください。 |
|
このサービスは、コンテンツIDを使用してコンテンツ・アイテムのチェックアウトを元に戻します。「コンテンツ・アイテムのチェックアウトを元に戻す」を参照してください。 |
|
このサービスは、コンテンツ・アイテムのリビジョン情報を取得します。「コンテンツ・アイテム情報の取得」を参照してください。 |
|
このサービスは、チェックアウトを実行せずに、サムネイル・イメージなどのコンテンツ・アイテムのコピーを取得します。「ファイルの取得」を参照してください。 |
|
このサービスは、渡された問合せテキストに対する検索結果を取得します。「検索結果の取得」を参照してください。 |
|
このサービスは、WebCenter Contentデータベースから、指定された表をエクスポートします。「表のデータの取得」を参照してください。 |
|
このサービスは、基準ワークフローの情報を返します。「基準ワークフロー情報の取得」を参照してください。 |
PING_SERVER
サービスは、サーバーへの接続が存在するかどうかを評価します。
このサービスは、コンテンツ・サーバーのステータス情報を返します。
このサービスを実行できない場合、「サーバーへの接続を確立できません。」
というメッセージがユーザーに表示されます。
ヒント:
コンテンツ・サーバーへの接続が確立されており、コマンドの実行権限を持つユーザーとしてログインしていることを確認するために、他のサービスをコールする前にPING_SERVER
リクエストを実行します。
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="PING_SERVER"> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="PING_SERVER"> <idc:document> <idc:field name="changedSubjects"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="StatusMessage"> You are logged in as 'sysadmin'. </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
ADD_USER
サービスは、システムに新しいユーザーを追加します。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
一意の名前。 |
|
ユーザーの認可タイプ。この値は、 |
|
|
次のオプション・パラメータを指定できます。
パラメータ | 説明 |
---|---|
|
ユーザーの電子メール・アドレス。 |
|
ユーザーの完全名。 |
|
ユーザーのパスワード。 |
このオプション・データは、ユーザーの属性情報、ユーザーが属するロール、およびユーザーがアクセス権を持つアカウントを定義します。属性情報は、3つのカンマ区切りの文字列のリストで構成されます。最初の文字列は属性のタイプを、2番目の文字列は属性の名前を、3番目の文字列はアクセス番号を示します。
注意:
ユーザー属性情報は、事前定義されていません。デフォルトでは、ユーザーはどのロールまたはアカウントにも属しておらず、システムではゲストになります。
属性情報 | 説明 |
---|---|
|
アクセス番号は、そのユーザーに割り当てられるアクセスまたは権限のレベルを決定します。 |
|
属性名は、割り当てられるroleまたはaccountの名前です。たとえば、 |
|
属性タイプは、 |
アクセス番号
ユーザーに次のアクセス番号を割り当てることができます。
アクセス・レベルのフラグ | 説明 |
---|---|
|
読取り専用。 |
|
読取りと書込み。 |
|
読取り、書込みおよび削除。 |
|
管理権限。 |
属性名
ユーザーは、複数のロールおよびアカウントに属することができます。そのため、属性情報列に、カンマで区切られた複数のロールおよびアカウント情報文字列が存在する可能性があります。
ユーザーが管理ロールを持つようにする場合、ユーザー属性情報は次のとおり定義します。
<idc:resultset name="UserAttribInfo"> <idc:row dUserName="jsmith" AttributeInfo="role,contributor,15">
ユーザーがコントリビュータとエディタの両方のロールに属し、かつ会計帳簿の読取り権限を持つようにする場合、ユーザー属性情報は次のように定義します。
<idc:resultset name="UserAttribInfo"> <idc:row dUserName="jsmith" AttributeInfo="role,contributor,15,role,editor,15,account,books,1">
属性タイプ
ロールを定義するとき、最初の文字列ではこれがrole属性であることを指定し、2番目の文字列はロールの名前、3番目の文字列はデフォルト・エントリの15になります。
アカウントを定義するとき、最初の文字列ではこれがaccount属性であることを指定し、2番目の文字列はアカウントの名前、3番目の文字列はアクセス・レベルになります。
role属性の場合、情報は次のようなフォームになります。
role,contributor,15
アクセス・レベルによって指定アカウントへのユーザーの権限が決定されるaccount属性の場合、情報は次のようなフォームになります。
account,books,1
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="ADD_USER"> <idc:user dName="Jennifer" dFullName="Jennifer Anton" dPassword="password" dEmail="email@example.com" dUserAuthType="local"> <idc:resultset name="UserAttribInfo"> <idc:row dUserName="Jennifer" AttributeInfo="role,contributor,3"> </idc:row> </idc:resultset> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="ADD_USER"> <idc:document> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="isAdd"> 1 </idc:field> <idc:field name="copyAll"> 1 </idc:field> <idc:field name="alwaysSave"> 1 </idc:field> <idc:field name="dAttributeName"> contributor </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="doAdminFields"> 1 </idc:field> <idc:field name="dAttributePrivilege"> 3 </idc:field> <idc:field name="dAttributeType"> role </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="changedSubjects"> userlist,1018884022874 </idc:field> </idc:document> <idc:user dUserAuthType="local" dEmail="email@example.com" dFullName="Jennifer Anton" dUser="sysadmin" dPassword="password" dName="Jennifer"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
EDIT_USER
サービスは、既存のユーザーの情報を編集します。
ユーザー名とユーザーの認可タイプが指定されると、サービスは、そのユーザーがシステム内に存在するかどうかを判断します。存在しない場合、サービスは失敗します。それ以外の場合、ユーザー情報は、更新され置き換えられます。
最も発生しがちなエラーは、ユーザーがこのアクションを実行するためのセキュリティ・レベルを持っていないことです。このサービスを実行できない場合、エラー・メッセージがユーザーに表示されます。
注意:
ユーザー属性情報は、現在の属性を置き換えます。リストに追加されるわけではありません。そのため、ユーザー属性情報が定義されていない場合、ユーザーは、システムではゲストになります。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
一意の名前。 |
|
ユーザーの認可タイプ。この値は、 |
|
|
次のオプション・パラメータを指定できます。
パラメータ | 説明 |
---|---|
|
ユーザーの電子メール・アドレス。 |
|
ユーザーの完全名。 |
|
ユーザーのパスワード。 |
|
ロケールの指定( |
|
定義済のユーザー・タイプ。 |
ユーザーの属性情報を含み、ユーザーが属するロールおよびユーザーがアクセス権を持つアカウントを参照するResultSet。属性情報は、3つのカンマ区切りの文字列のリストで構成されます。最初の文字列は属性のタイプを、2番目の文字列は属性の名前を、3番目の文字列はアクセス番号を示します。
注意:
ユーザー属性情報は、事前定義されていません。デフォルトでは、ユーザーはどのロールまたはアカウントにも属しておらず、システムではゲストになります。
属性情報 | 説明 |
---|---|
アクセス番号 |
アクセス番号は、そのユーザーに割り当てられるアクセスまたは権限のレベルを決定します。 |
属性名 |
属性名は、割り当てられるroleまたはaccountの名前です。たとえば、admin、contributor、editorなどを割り当てることができます。 |
属性タイプ |
属性タイプは、roleまたはaccountで構成されます。 |
アクセス番号
ユーザーに次のアクセス番号を割り当てることができます。
アクセス・レベルのフラグ | 説明 |
---|---|
1 |
読取り専用。 |
3 |
読取りと書込み。 |
7 |
読取り、書込みおよび削除。 |
15 |
管理権限。 |
ユーザーは、複数のロールおよびアカウントに属することができます。そのため、属性情報列に、カンマで区切られた複数のロールおよびアカウント情報文字列が存在する可能性があります。
ユーザーが管理ロールを持つようにする場合、ユーザー属性情報は次のとおり定義します。
<idc:resultset name="UserAttribInfo"> <idc:row dUserName="jsmith" AttributeInfo="role,contribut or,15">
ユーザーがコントリビュータとエディタの両方のロールに属し、かつ会計帳簿の読取り権限を持つようにする場合、ユーザー属性情報は次のように定義します。
<idc:resultset name="UserAttribInfo"> <idc:row dUserName="jsmith" AttributeInfo="role,contributor,15,role,editor,15,account,books,1">
属性タイプ
ロールの定義では、最初の文字列ではこれがrole属性であることを指定し、2番目の文字列はロールの名前、3番目の文字列はデフォルト・エントリの15になります。
アカウントの定義では、最初の文字列ではこれがaccount属性であることを指定し、2番目の文字列はアカウントの名前、3番目の文字列はアクセス・レベルになります。
role属性の場合、情報は次のようなフォームになります。
role,contributor,15
アクセス・レベルによって指定アカウントへのユーザーの権限が決定されるaccount属性の場合、情報は次のようなフォームになります。
account,books,1
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="EDIT_USER"> <idc:user dName="Jennifer" dFullName="Jennifer Anton" dPassword="password" dEmail="jennifer@example.com" dUserAuthType="local"> <idc:resultset name="UserAttribInfo"> <idc:row dUserName="Jennifer" AttributeInfo="role,guest,1"> </idc:row> </idc:resultset> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="EDIT_USER"> <idc:document> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="alwaysSave"> 1 </idc:field> <idc:field name="dAttributeName"> guest </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="doAdminFields"> 1 </idc:field> <idc:field name="dAttributePrivilege"> 1 </idc:field> <idc:field name="dAttributeType"> role </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="changedSubjects"> userlist,1018884022877 </idc:field> </idc:document> <idc:user dUserAuthType="local" dEmail="jennifer@example.com" dFullName="Jennifer Anton" dUser="sysadmin" dPassword="password" dName="Jennifer"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
GET_USER_INFO
サービスは、ユーザー・リストを取得します。
定義済のユーザーが指定されると、サービスは、ユーザー・リストを取得します。
このサービスを実行できない場合、「ユーザー・リストを取得できません。」
というメッセージがユーザーに表示されます。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
定義済のユーザー。 |
|
|
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_USER_INFO"> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_USER_INFO"> <idc:document> <idc:field name="changedSubjects"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:optionlist name="Users_UserLocaleList"> <idc:option> English-US </idc:option> </idc:optionlist> </idc:document> <idc:user dUser="sysadmin" dName="sysadmin"> <idc:resultset name="UserMetaDefinition"> <idc:row umdName="dFullName" umdType="BigText" umdCaption="apTitleFullName" umdIsOptionList="0" umdOptionListType="0" umdOptionListKey="" umdIsAdminEdit="0" umdOverrideBitFlag="1"> </idc:row> <idc:row umdName="dEmail" umdType="BigText" umdCaption="apTitleEmailAddress" umdIsOptionList="0" umdOptionListType="" umdOptionListKey="" umdIsAdminEdit="0" umdOverrideBitFlag="2"> </idc:row> <idc:row umdName="dUserType" umdType="Text" umdCaption="apTitleUserType" umdIsOptionList="1" umdOptionListType="combo" umdOptionListKey="Users_UserTypeList" umdIsAdminEdit="0" umdOverrideBitFlag="4"> </idc:row> <idc:row umdName="dUserLocale" umdType="Text" umdCaption="apTitleUserLocale" umdIsOptionList="1" umdOptionListType="choice,locale" umdOptionListKey="Users_UserLocaleList" umdIsAdminEdit="0" umdOverrideBitFlag="8"> </idc:row> </idc:resultset> <idc:resultset name="USER_INFO"> <idc:row dName="sysadmin" dFullName="System Administrator" dEmail="" dPasswordEncoding="" dPassword="-----" dUserType="" dUserAuthType="LOCAL" dUserOrgPath="" dUserSourceOrgPath="" dUserSourceFlags="0" dUserArriveDate="" dUserChangeDate="" dUserLocale="" dUserTimeZone=""> </idc:row> </idc:resultset> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
DELETE_USER
サービスは、既存のユーザーを削除します。
ユーザー名が指定されると、サービスは、システムからそのユーザーを削除します。
最も発生しがちなエラーは、ユーザーがエイリアスに割り当てられていることです。このサービスを実行できない場合、エラー・メッセージが返されます。
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="DELETE_USER"> <idc:user dName="Jennifer" > </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="DELETE_USER"> <idc:document> <idc:field name="changedSubjects"> userlist,1018884022876 </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="dUserName"> Jennifer </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> </idc:document> <idc:user dUser="sysadmin" dName="Jennifer"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
CHECKIN_UNIVERSAL
サービスは、コンテンツ・サーバーへの制御されたチェックインを実行します。
dDocName
)をキーとして使用してデータベースに問合せを行うことにより、コンテンツ・アイテムが新規のものであるか、システムにすでに存在しているものであるかを判断します。dPublishState
)は空である必要があります。dRevLabel
)が指定された場合、このサービスは、そのコンテンツ・リビジョンがシステムに存在しているかどうかをチェックします。そのリビジョンが存在する場合は、例外がスローされます。CHECKIN_NEW
_SUB
: コンテンツ・アイテムがサーバーに存在しない場合。CHECKIN_SEL_SUB
: コンテンツ・アイテムがシステムに存在し、有効なリビジョンが指定されておらず、コンテンツ・アイテムがチェックアウトされている場合。WORKFLOW_CHECKIN_SUB
: コンテンツ・アイテムが存在し、ワークフローの一部である場合。「コンテンツ・アイテム''{dDocName}''を正常にチェックインできませんでした。」
というメッセージがユーザーに表示されます。CHECKIN_UNIVERSAL
サービスは、コンテンツ・サーバーへの制御されたチェックインです。チェックインは、新規、選択済またはワークフロー・チェックイン・プロセスのいずれかに分類され、ブラウザまたは「リポジトリ・マネージャ」アプリケーションを介したチェックインと同じロジックに従います。チェックイン対象のコンテンツ・アイテムがすでにシステムに存在している場合、チェックインを正常に行うためには、そのコンテンツ・アイテムをチェックアウトする必要があります。
これらは、本質的に、コンテンツ・サーバーへの制御されたチェックインで使用されるサブサービスと同じです。ただし、これらのサブサービスは、BatchLoadまたはアーカイブのインポート中にはコールされません。このサービスは、セキュリティをチェックして、ユーザーがコンテンツ・アイテムのチェックインを実行するための十分な権限を持っているかどうか、およびコンテンツ・アイテムが存在する場合は、それがチェックアウトされているかどうかを判断します。さらに、コンテンツ・アイテムがワークフローの基準に一致しているかどうか、またはアクティブな基本ワークフローに属しているかどうかも判断します。
コンテンツ・アイテムが見つからない場合、コンテンツ・アイテムは、CHECKIN_NEW_SUB
サブサービスを使用してチェックインされます。このサブサービスは、チェックイン・データを検証し、このコンテンツ・アイテムが基準ワークフローに属しているかどうかを判断します。コンテンツ・アイテムがすでにシステムに存在しており、それがワークフローに属していない場合、CHECKIN_SEL_SUB
が使用されます。それ以外の場合、つまり、コンテンツ・アイテムが存在しており、それがワークフローに属している場合は、WORKFLOW_CHECKIN_SUB
が使用されます。
注意:
バックスラッシュ(\)はエスケープ文字であるため、すべてのパスで、ファイルの区切り文字としてスラッシュ(/)が使用されます。たとえば、primaryFile=d:/temp/myfile.txt
は、チェックインするプライマリ・ファイルを指します。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
コンテンツ・アイテムの作成者(コントリビュータ)。 |
|
コンテンツ・アイテムの識別子(コンテンツID)。
|
|
コンテンツ・アイテムのタイトル。 |
|
コンテンツ・アイテムのタイプ。 |
|
このフラグは |
|
|
|
|
|
サーバーから見た、ファイルの場所への絶対パス。ファイルの区切り文字としてスラッシュを使用します。 プライマリ・ファイルは、メタデータのみをチェックインするのではないかぎり、指定する必要があります。プライマリ・ファイルとともに代替ファイルが指定された場合、Oracle WebCenter Content: Inbound Refineryは、代替ファイルを変換します。それ以外の場合、プライマリ・ファイルが変換されます。
|
注意:
定義するカスタムのメタデータ・フィールドも指定する必要があります。
次のパラメータが必要な場合もあります。
パラメータ | 説明 |
---|---|
dDocAccount | コンテンツ・アイテムのセキュリティ・アカウント。 アカウントを有効にした場合は、このパラメータを渡す必要があります。 |
次のオプション・パラメータを指定することができます。
パラメータ | 説明 |
---|---|
alternateFile |
変換のための代替ファイル。
|
dCreateDate |
コンテンツ・アイテムが作成された日付。デフォルトでは、これは現在の日付です。 |
dInDate |
コンテンツのリリース日。コンテンツ・アイテムがWebにリリースされる日付。デフォルトでは、これは現在の日付です。 コンテンツのリリース日(dInDate)が指定されない場合、作成日(dCreateDate)が使用されます。この値が指定されない場合、自動的に生成されます。 |
dOutDate |
コンテンツの有効期限。デフォルトでは、これはブランクであり、有効期限は指定されません。 コンテンツの有効期限(dOutDate)が入力されない場合、値は空のままになります。これは有効な状態です。 |
dRevLabel |
コンテンツ・アイテムのリビジョン・ラベル。設定された場合、このラベルを使用して、指定されたリビジョンを検索します。 |
isFinished |
これがワークフロー・チェックインであり、その編集が完了している場合は、 詳細は、 |
注意:
コンテンツID (dDocName
)と内部のコンテンツ・アイテム・リビジョン識別子(dID
)を混同しないでください。dID
値は、コンテンツ・アイテムの特定のレンディションへの、生成済の参照です
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="CHECKIN_UNIVERSAL"> <idc:document dDocName="SoapUpload2" dDocAuthor="sysadmin" dDocTitle="Soap Upload 2 Document" dDocType="ADACCT" dSecurityGroup="Public" dDocAccount=""> <idc:file name="primaryFile" href="C:/stellent/custom/Soap/JavaSamples/SoapClientUpload/soaptest.doc"> </idc:file> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="CHECKIN_UNIVERSAL"> <idc:document dDocAuthor="sysadmin" dDocName="SoapUpload2" dExtension="doc" dDocAccount="" dIsPrimary="1" dRevisionID="1" dPublishType="" dInDate="4/22/02 1:31PM" dReleaseState="N" dRevClassID="12" dCreateDate="4/22/02 1:31 PM" dIsWebFormat="0" dPublishState="" dLocation="" dStatus="DONE" dOriginalName="12.doc" dOutDate="" dDocID="24" dRevLabel="1" dProcessingState="Y" dDocTitle="Soap Upload 2 Document" dID="12" dDocType="ADACCT" dSecurityGroup="Public" dFileSize="19456" dFormat="application/msword"> <idc:field name="primaryFile:path"> c:/stellent/vault/~temp/1230750423.doc </idc:field> <idc:field name="dRawDocID"> 23 </idc:field> <idc:field name="changedSubjects"> documents,1019482656706 </idc:field> <idc:field name="StatusCode"> 0 </idc:field> <idc:field name="soapFile:path"> c:/stellent/vault/~temp/1230750422.xml </idc:field> <idc:field name="xComments"> </idc:field> <idc:field name="soapStartContentID"> SoapContent </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="dActionDate"> 4/22/02 1:31 PM </idc:field> <idc:field name="dActionMillis"> 30263 </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="WebfilePath"> c:/stellent/weblayout/groups/public/documents/adacct/soapupload2~1.doc </idc:field> <idc:field name="StatusMessage"> Successfully checked in content item 'SoapUpload2'. </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="dConversion"> PASSTHRU </idc:field> <idc:field name="primaryFile"> C:/stellent/custom/Soap/JavaSamples/SoapClientUpload/soaptest.doc </idc:field> <idc:field name="dAction"> Checkin </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="VaultfilePath"> c:/stellent/vault/adacct/12.doc </idc:field> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
CHECKOUT_BY_NAME
は、指定されたコンテンツ・アイテムの最新リビジョンをチェックアウトします。
注意:
このサービスは、コンテンツ・アイテムをロック済としてマークするだけです。ダウンロードは実行しません。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
コンテンツ・アイテムの識別子(コンテンツID)。 |
|
|
注意:
コンテンツID (dDocName
)と内部のコンテンツ・アイテム・リビジョン識別子(dID
)を混同しないでください。dID
値は、コンテンツ・アイテムの特定のレンディションへの、生成済の参照です。
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="CHECKOUT_BY_NAME"> <idc:document dDocName="soap_sample"> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="CHECKOUT_BY_NAME"> <idc:document dDocTitle="soap_sample" dID="10" dRevLabel="1" dDocAccount="" dRevClassID="10" dDocName="soap_sample" dOriginalName="soap_sample.txt" dSecurityGroup="Public"> <idc:field name="dActionMillis"> 39964 </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="dActionDate"> 4/22/02 12:20 PM </idc:field> <idc:field name="latestID"> 10 </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="CurRevID"> 10 </idc:field> <idc:field name="CurRevIsCheckedOut"> 0 </idc:field> <idc:field name="dAction"> Check out </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="CurRevCheckoutUser"> sysadmin </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="changedSubjects"> documents,1019482656687 </idc:field> <idc:resultset name="DOC_INFO"> <idc:row dID="10" dDocName="soap_sample" dDocType="ADACCT" dDocTitle="soap_sample" dDocAuthor="sysadmin" dRevClassID="10" dRevisionID="1" dRevLabel="1" dIsCheckedOut="1" dCheckoutUser="sysadmin" dSecurityGroup="Public" dCreateDate="4/22/02 12:18 PM" dInDate="4/22/02 12:18 PM" dOutDate="" dStatus="RELEASED" dReleaseState="Y" dFlag1="" dWebExtension="txt" dProcessingState="Y" dMessage="" dDocAccount="" dReleaseDate="4/22/02 12:19 PM" dRendition1="" dRendition2="" dIndexerState="" dPublishType="" dPublishState="" dDocID="19" dIsPrimary="1" dIsWebFormat="0" dLocation="" dOriginalName="soap_sample.txt" dFormat="text/plain" dExtension="txt" dFileSize="12"> <idc:field name="xComments"> </idc:field> </idc:row> </idc:resultset> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
UNDO_CHECKOUT_BY_NAME
サービスは、コンテンツIDを使用してコンテンツ・アイテムのチェックアウトを元に戻します。
コンテンツ・アイテムの名前が指定されると、このサービスは、コンテンツ・アイテムをシステムで検索し、チェックアウトを元に戻そうとします。
コンテンツ・アイテムがシステムに存在しない場合、コンテンツ・アイテムがチェックアウトされていない場合、またはチェックアウトを元に戻すのに十分な権限がユーザーにない場合、サービスは失敗します。
このサービスは、アプレットまたはアプリケーションによって使用されます。
このサービスを実行できない場合、「{dDocName}に対するチェックアウトを元に戻せません。」
というメッセージがユーザーに表示されます。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
コンテンツ・アイテムの識別子(コンテンツID)。 |
|
|
注意:
コンテンツID (dDocName
)と内部のコンテンツ・アイテム・リビジョン識別子(dID
)を混同しないでください。dID
値は、コンテンツ・アイテムの特定のレンディションへの、生成済の参照です。
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="UNDO_CHECKOUT_BY_NAME"> <idc:document dDocName="soap_sample"> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="UNDO_CHECKOUT_BY_NAME"> <idc:document dCheckoutUser="sysadmin" dPublishState="" dDocTitle="soap_sample" dID="10" dRevLabel="1" dDocAccount="" dDocName="soap_sample" dRevClassID="10" dOriginalName="soap_sample.txt" dSecurityGroup="Public"> <idc:field name="dActionMillis"> 5317 </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="dActionDate"> 4/22/02 12:23 PM </idc:field> <idc:field name="latestID"> 10 </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="CurRevID"> 10 </idc:field> <idc:field name="CurRevIsCheckedOut"> 1 </idc:field> <idc:field name="dAction"> Undo Checkout </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="CurRevCheckoutUser"> sysadmin </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="changedSubjects"> documents,1019482656689 </idc:field> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
DOC_INFO
サービスは、コンテンツ・アイテムのリビジョン情報を取得します。
コンテンツ・アイテムのリビジョンIDが指定されると、このサービスは、コンテンツ・アイテムのリビジョン情報を取得します。
最も発生しがちなエラーは、そのコンテンツ・アイテムがすでにシステムに存在していないか、ユーザーがこのアクションを実行するためのセキュリティ・レベルを持っていないことです。このサービスを実行できない場合、エラー・メッセージがユーザーに表示されます。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
生成済のコンテンツ・アイテムのリビジョンID。 |
|
|
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="DOC_INFO"> <idc:document dID="6"> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="DOC_INFO"> <idc:document dStatus="RELEASED" dDocFormats="text/plain" dID="6" DocUrl="HTTP://wharristest/stellent/groups/public/documents/adacct/stellent.txt" dDocTitle="stellent"> <idc:field name="dSubscriptionAlias"> sysadmin </idc:field> <idc:field name="changedSubjects"> </idc:field> <idc:field name="dSubscriptionID"> stellent </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="dSubscriptionType"> Basic </idc:field> <idc:resultset name="REVISION_HISTORY"> <idc:row dFormat="text/plain" dInDate="4/12/02 1:27 PM" dOutDate="" dStatus="RELEASED" dProcessingState="Y" dRevLabel="1" dID="6" dDocName="stellent" dRevisionID="1"> </idc:row> </idc:resultset> <idc:resultset name="WF_INFO"> </idc:resultset> <idc:resultset name="DOC_INFO"> <idc:row dID="6" dDocName="stellent" dDocType="ADACCT" dDocTitle="stellent" dDocAuthor="sysadmin" dRevClassID="6" dRevisionID="1" dRevLabel="1" dIsCheckedOut="0" dCheckoutUser="" dSecurityGroup="Public" dCreateDate="4/12/02 1:27 PM" dInDate="4/12/02 1:27 PM" dOutDate="" dStatus="RELEASED" dReleaseState="Y" dFlag1="" dWebExtension="txt" dProcessingState="Y" dMessage="" dDocAccount="" dReleaseDate="4/12/02 1:27 PM" dRendition1="" dRendition2="" dIndexerState="" dPublishType="" dPublishState="" dDocID="11" dIsPrimary="1" dIsWebFormat="0" dLocation="" dOriginalName="stellent.txt" dFormat="text/plain" dExtension="txt" dFileSize="8"> <idc:field name="xComments"> stellent </idc:field> </idc:row> </idc:resultset> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
GET_FILE
サービスは、コンテンツ・アイテムの特定のレンディション、最新のリビジョンまたは最新リリースのリビジョンを返します。チェックアウトを実行せずにコンテンツ・アイテムのコピーを取得します。
このコマンドは、リビジョンのdID
(コンテンツ・アイテムのリビジョンID)を計算し、計算されたdID
を持つリビジョンの特定のレンディションのファイル名を特定します。指定されたdID
、またはdDocName
(コンテンツ・アイテム名)とRevisionSelectionMethod
パラメータを使用できます。
dID
、またはdDocName
とRevisionSelectionMethod
パラメータが指定されると、このサービスは、そのリビジョンの特定のレンディションのファイル名を特定し、そのファイルをクライアントに返します。
最も発生しがちなエラーは、パラメータになんらかの不整合があるか、存在しないリビジョンまたはレンディションに対するリクエストであることです。このサービスを実行できない場合、エラー・メッセージがユーザーに表示されます。
注意:
リクエスタがdDocName
値を認識しているコンテンツ・アイテムに対するすべてのリクエストで、dDocName
を使用してください。コンテンツ・サーバーのエラー・メッセージは、フォームなど、他の機能と同様に、dDocName
値が存在しているという想定に基づいています。
次のパラメータを指定する必要があります。
注意:
コンテンツ・アイテムのリビジョンID (dID
)が指定されているか、コンテンツ・アイテム名(dDocName
)とRevisionSelectionMethod
パラメータが定義されている必要があります。
パラメータ | 説明 |
---|---|
|
コンテンツ・アイテムの識別子(コンテンツID)。
|
|
生成済のコンテンツ・アイテムのリビジョンID。
|
|
リビジョン選択メソッド。 これが指定された場合は、
|
|
|
次のオプション・パラメータを指定できます。
パラメータ | 説明 |
---|---|
|
コンテンツ・アイテムのレンディション。このパラメータは、コンテンツ・アイテムのレンディションを指定するもので、
たとえば、 |
注意:
コンテンツID (dDocName
)と内部のコンテンツ・アイテム・リビジョン識別子(dID
)を混同しないでください。dID
値は、コンテンツ・アイテムの特定のレンディションへの、生成済の参照です。
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_FILE"> <idc:document dID="10"> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_FILE"> <idc:document dID="10"> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Receving response... HTTP/1.1 200 OK Server: Microsoft-IIS/5.0 Connection: keep-alive Date: Mon, 29 Apr 2002 16:09:42 GMT Content-type: Multipart/Related; boundary=-----------------4002588859573015789; type=text/xml; start="<SoapContent>" Content-Length: 1717 -------------------4002588859573015789 Content-Type: text/xml; charset=utf-8 Content-ID: <SoapContent> <?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_FILE"> <idc:document dID="10" dExtension="txt"> <idc:field name="changedSubjects"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:resultset name="FILE_DOC_INFO"> <idc:row dID="10" dDocName="soap_sample" dDocType="ADACCT" dDocTitle="soap_sample" dDocAuthor="sysadmin" dRevClassID="10" dRevisionID="1" dRevLabel="1" dIsCheckedOut="0" dCheckoutUser="" dSecurityGroup="Public" dCreateDate="4/22/02 12:18PM" dInDate="4/22/02 12:18 PM" dOutDate="" dStatus="RELEASED" dReleaseState="Y" dFlag1="" dWebExtension="txt" dProcessingState="Y" dMessage="" dDocAccount="" dReleaseDate="4/22/02 12:19 PM" dRendition1="" dRendition2="" dIndexerState="" dPublishType="" dPublishState="" dDocID="19" dIsPrimary="1" dIsWebFormat="0" dLocation="" dOriginalName="soap_sample.txt" dFormat="text/plain" dExtension="txt" dFileSize="12"> <idc:field name="xComments"> </idc:field> </idc:row> </idc:resultset> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope> -------------------4002588859573015789 Content-Type: text/html Content-ID: <soap_sample.txt> ...File content... -------------------4002588859573015789--
GET_SEARCH_RESULTS
サービスは、渡された問合せテキストに対する検索結果を取得します。
コンテンツ・アイテムの問合せを行ったユーザーに検索結果を表示するために使用されます。
QueryText
パラメータにTitle
やContent ID
などの値を添付して、このサービスで返される結果を絞り込むことができます。
QueryText
パラメータは、問合せを定義します。SOAPメッセージで使用するためには、この問合せはXMLエンコードである必要があります。次の例では、コンテンツ・アイテムの問合せのために送信される文字列を標準フォーマットで渡す場合と、XMLエンコード・フォーマットで渡す場合の両方を示します。
標準フォーマットの文字列が指定されたパラメータは次のとおりです。
QueryText=dDocType <Substring> "ADSALES"
XMLエンコードの文字列が指定されたパラメータは次のとおりです。
<idc:field name="QueryText"> dDocType <Substring> `ADSALES` </idc:field>
XMLエンコードの文字列のフォーマットの詳細は、「特殊文字」を参照してください。
このサービスを実行できない場合、「検索結果を取得できません」
というメッセージが表示されます。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
|
|
コンテンツ・アイテムの問合せのために送信される、ユーザーが指定したテキスト。 |
次のオプション・パラメータを指定できます。
パラメータ | 説明 |
---|---|
|
返される結果の数。デフォルトは |
|
ソートの基準となるメタデータ・フィールドの名前。
|
|
ソート順序。使用できる値は、 |
|
次の検索結果として取得される最初の行。たとえば、結果として200行が返され、 |
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_SEARCH_RESULTS"> <idc:document> <idc:field name="QueryText"> dDocType <Substring> "ADSALES" </idc:field> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_SEARCH_RESULTS"> <idc:document StartRow="1" TotalDocsProcessed="6" TotalRows="0" QueryText="dDocType+%3cSubstring%3e+%22ADSALES%22" EndRow="25" SearchProviders="Master_on_wharristest" NumPages="0" PageNumber="1"> <idc:field name="refreshMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="EnterpriseSearchMaxRows"> 4 </idc:field> <idc:field name="FullRequest"> &QueryText=dDocType+%3cSubstring%3e+%22ADSALES%22 </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="changedSubjects"> </idc:field> <idc:field name="Text2"> <$dDocTitle$> </idc:field> <idc:field name="Text1"> <$dDocName$> </idc:field> <idc:field name="OriginalQueryText"> dDocType+%3cSubstring%3e+%22ADSALES%22 </idc:field> <idc:resultset name="SearchResults"> </idc:resultset> <idc:resultset name="NavigationPages"> </idc:resultset> <idc:resultset name="Master_on_wharristest"> </idc:resultset> <idc:resultset name="EnterpriseSearchResults"> <idc:row ProviderName="Master_on_wharristest" IDC_Name="Master_on_wharristest" TotalRows="0" TotalDocsProcessed="6"> <idc:field name="ProviderDescription"> !csProviderLocalContentServerLabel </idc:field> <idc:field name="InstanceMenuLabel"> Master_on_wharristest </idc:field> <idc:field name="InstanceDescription"> Master_on_wharristest </idc:field> <idc:field name="IntradocServerHostName"> wharristest </idc:field> <idc:field name="HttpRelativeWebRoot"> /stellent/ </idc:field> <idc:field name="IsImplicitlySearched"> </idc:field> <idc:field name="UserAccounts"> #all </idc:field> <idc:field name="IsLocalCollection"> true </idc:field> <idc:field name="Selected"> </idc:field> <idc:field name="StatusMessage"> Success </idc:field> <idc:field name="ResultSetName"> Master_on_wharristest </idc:field> <idc:field name="SearchCgiWebUrl"> /idcplg/idc_cgi_isapi.dll/stellent/pxs </idc:field> </idc:row> </idc:resultset> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
GET_TABLE
サービスは、WebCenter Contentデータベースから、指定された表をエクスポートします。
ResultSetを作成し、シリアル化されたHDAファイルにそれを追加することにより、指定された表をエクスポートします。表が見つからない場合、サービスは失敗します。シリアル化されたHDAファイルを受信して、後で使用するためにこのResultSetを格納するのは、コール元プログラムです。
最も発生しがちなエラーは、表名が存在しないことです。このサービスを実行できない場合、エラー・メッセージがユーザーに表示されます。
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
|
|
エクスポートする表の名前。 |
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_TABLE"> <idc:document> <idc:field name="tableName"> DocTypes </idc:field> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_TABLE"> <idc:document> <idc:field name="tableName"> DocTypes </idc:field> <idc:field name="changedSubjects"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:resultset name="DocTypes"> <idc:row dDocType="ADACCT" dDescription="Acme Accounting Department" dGif="adacct.gif"> </idc:row> <idc:row dDocType="ADCORP" dDescription="Acme Corporate Department" dGif="adcorp.gif"> </idc:row> <idc:row dDocType="ADENG" dDescription="Acme Engineering Department" dGif="adeng.gif"> </idc:row> <idc:row dDocType="ADHR" dDescription="Acme Human Resources Department" dGif="adhr.gif"> </idc:row> <idc:row dDocType="ADMFG" dDescription="Acme Manufacturing Department" dGif="admfg.gif"> </idc:row> <idc:row dDocType="ADMKT" dDescription="Acme Marketing Department" dGif="admkt.gif"> </idc:row> <idc:row dDocType="ADSALES" dDescription="Acme Sales Department" dGif="adsales.gif"> </idc:row> </idc:resultset> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
GET_CRITERIA_WORKFLOWS_FOR_GROUP
サービスは、基準ワークフロー情報を返します。
セキュリティ・グループが指定されると、このサービスは、ワークフローおよび関連ステップのリストを返します。
ResultSetsのWorkflowsForGroup
およびWorkflowStepsForGroup
を返します。
WorkflowsForGroup
では、このグループに対するすべてのワークフローがリストされます(dWfID
、dWfName
)。
WorkflowStepsForGroup
では、このグループに対するすべてのワークフローのすべてのステップがリストされます(dWfID
、dWfName
、dWfStepID
、dWfStepName
)。
「ワークフロー管理」管理アプレットの「条件」タブから、基準ワークフローおよびサブワークフローを追加、編集、有効化、無効化および削除できます。
最も発生しがちなエラーは、指定のセキュリティ・グループが存在しないか、ユーザーがセキュリティ・チェックに失敗することです。そのような状況では、サービスは、ユーザーに表示するための適切な例外をスローします
次のパラメータを指定する必要があります。
パラメータ | 説明 |
---|---|
|
|
|
|
<?xml version="1.0" ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_CRITERIA_WORKFLOWS_FOR_GROUP"> <idc:document dSecurityGroup="Public" /> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_CRITERIA_WORKFLOWS_FOR_GROUP"> <idc:document dSecurityGroup="Public"> <idc:field name="changedSubjects"> </idc:field> <idc:field name="refreshSubjects"> </idc:field> <idc:field name="loadedUserAttributes"> 1 </idc:field> <idc:field name="changedMonikers"> </idc:field> <idc:field name="refreshSubMonikers"> </idc:field> <idc:field name="refreshMonikers"> </idc:field> <idc:resultset name="WorkflowStepsForGroup"> <idc:row> <idc:field name="dWfID"> 1 </idc:field> <idc:field name="dWfName"> TestWorkflow </idc:field> <idc:field name="dWfStepID"> 1 </idc:field> <idc:field name="dWfStepName"> contribution </idc:field> </idc:row> <idc:row> <idc:field name="dWfID"> 1 </idc:field> <idc:field name="dWfName"> TestWorkflow </idc:field> <idc:field name="dWfStepID"> 2 </idc:field> <idc:field name="dWfStepName"> StepOne </idc:field> </idc:row> </idc:resultset> <idc:resultset name="WorkflowsForGroup"> <idc:row> <idc:field name="dWfID"> 1 </idc:field> <idc:field name="dWfName"> TestWorkflow </idc:field> </idc:row> </idc:resultset> </idc:document> <idc:user dUser="sysadmin"> </idc:user> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
実行するサービスと必須パラメータを定義するSOAPパケットをカプセル化することで、Active Server Pageからコンテンツ・サーバーのIdcCommandサービスを実行できます。コマンドを実行するための適切な権限が必要です。管理者アクセスを必要とするコマンドもあれば、書込み権限のみを必要とするコマンドもあります。
Active Server Pageは、コンテンツ・サーバーからサービスをコールできます。サンプル・サービスの次の説明には、必須パラメータとオプション・パラメータが含まれています。また、埋込みSOAPリクエストのXMLフォーマット・バージョンも提供されます。
必須パラメータとオプション・パラメータを含め、サービス・コールの詳細は、「SOAPレスポンス/リクエストを使用したサンプルのサービス・コール」を参照してください。
次の例では、XMLフォーマットSOAPリクエストは、GET_SEARCH_RESULTS
サービスを使用して、渡された問合せテキストに対する検索結果を取得します。
<?xml version='1.0' ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <idc:service xmlns:idc="http://www.oracle.com/IdcService/" IdcService="GET_SEARCH_RESULTS"> <idc:document> <idc:field name="QueryText"> dDocType <Substring> "ADSALES" </idc:field> </idc:document> </idc:service> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
埋込みSOAPリクエストは、Active Server Pageの基礎を形成します。次のサンプルは、GET_SEARCH_RESULTS
を実行します。
サービス・コールの詳細およびSOAPレスポンスとリクエスト・メッセージの例は、「SOAPレスポンス/リクエストを使用したサンプルのサービス・コール」を参照してください。
<% ‘ Sample ASP page of sending a DOC_INFO Soap request. Option Explicit Response.Write("Search Results") %> <br><br> <% ‘ Construct the Soap request. Dim strSoapRequest, strQueryText strQueryText = Request.Form("QueryText") strQueryText = Server.HtmlEncode(strQueryText) strSoapRequest = "<?xml version='1.0' ?>" _ & "<SOAP-ENV:Envelope xmlns:SOAP-ENV=""http://schemas.xmlsoap.org/soap/envelope/"">" _ & "<SOAP-ENV:Body>" _ & "<idc:service xmlns:idc=""http://www.oracle.com/IdcService/"" IdcService=""GET_SEARCH_RESULTS"">" _ & "<idc:document>" _ & "<idc:field name=""QueryText"">" & strQueryText & "</idc:field>" _ & "<idc:field name=""SortField"">" & Request.Form("SortField") & "</idc:field>" _ & "<idc:field name=""SortOrder"">" & Request.Form("SortOrder") & "</idc:field>" _ & "<idc:field name=""ResultCount"">" & Request.Form("ResultCount") & "</idc:field>" _ & "<idc:field name=""Auth"">Internet</idc:field>" _ & "</idc:document>" _ & "</idc:service>" _ & "</SOAP-ENV:Body>" _ & "</SOAP-ENV:Envelope>" ‘ Send the Soap request. Dim objXmlHttp Set objXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP") objXmlHttp.open "POST", "http://localhost/stellent/idcplg", False, "sysadmin", "idc" objXmlHttp.setRequestHeader "Content-Type", "text/xml; charset=utf-8" objXmlHttp.send(strSoapRequest) ‘ Parse the Soap response. Dim objXmlDoc Set objXmlDoc = Server.CreateObject("Msxml2.DOMDocument") objXmlDoc.async = False objXmlDoc.Load objXmlHttp.responseXml ‘ Check for errors. Dim strResponseError strResponseError = objXmlDoc.parseError.reason If strResponseError <> "" Then Response.Write(objXmlHttp.ResponseText) DisplayBackButton() Response.End End If ‘ Check for a fault string. Dim objXmlFaultNode Set objXmlFaultNode = objXmlDoc.documentElement.selectSingleNode("//SOAP-ENV:Fault/faultstring") If (Not (objXmlFaultNode Is Nothing)) Then Response.Write(objXmlFaultNode.Text) DisplayBackButton() Response.End End If ‘ Check the status code. Dim objXmlStatusCodeNode, objXmlStatusMessageNode, strStatusCode, nStatusCode, strStatusMessage Set objXmlStatusCodeNode = objXmlDoc.documentElement.selectSingleNode("//idc:field[@name='StatusCode']") If (Not objXmlStatusCodeNode Is Nothing) Then nStatusCode = CInt(objXmlStatusCodeNode.Text) If (nStatusCode < 0) Then Response.Write(objXmlDoc.documentElement.selectSingleNode("//idc:field[@name='StatusMessage']").Text) DisplayBackButton() Response.End End If End If ‘ Display search results Dim strDocName, strDocTitle, strDocType, strInDate, strComments, nCurRow, nTotalRows Dim objXmlResultNodeList, objXmlCommentNode Set objXmlResultNodeList = objXmlDoc.documentElement.selectNodes("//idc:resultset[@name='SearchResults']/idc:row") nTotalRows = objXmlResultNodeList.Length %> <table> <tr> <td><b>Content ID</b></td> <td> </td> <td><b>Title</b></td> <td> </td> <td><b>Type</b></td> <td> </td> <td><b>Release Date</b></td> <td> </td> <td><b>Comments</b></td> </tr> <% For nCurRow = 0 To (nTotalRows - 1) strDocName = GetXmlNodeValue(objXmlResultNodeList.Item(nCurRow), "dDocName") strDocTitle = GetXmlNodeValue(objXmlResultNodeList.Item(nCurRow), "dDocTitle") strDocType = GetXmlNodeValue(objXmlResultNodeList.Item(nCurRow), "dDocType") strInDate = GetXmlNodeValue(objXmlResultNodeList.Item(nCurRow), "dInDate") strComments = GetXmlNodeValue(objXmlResultNodeList.Item(nCurRow), "xComments") %> <tr> <td><%=strDocName%></td> <td> </td> <td><%=strDocTitle%></td> <td> </td> <td><%=strDocType%></td> <td> </td> <td><%=strInDate%></td> <td> </td> <td><%=strComments%></td> </tr> <% Next %> </table> <% DisplayBackButton() ‘---------------------------- Function GetXmlNodeValue(objXmlRowNode, strNodeName) ‘---------------------------- Dim objXmlNode, objXmlNodeValue Set objXmlNode = objXmlRowNode.selectSingleNode("@" & strNodeName) If (objXmlNode Is Nothing) Then Set objXmlNode = objXmlRowNode.selectSingleNode("idc:field[@name='" & strNodeName & "‘]") End If If (Not (objXmlNode Is Nothing)) Then GetXmlNodeValue = objXmlNode.Text End If ‘---------------------------- End Function ‘---------------------------- ‘---------------------------- Sub DisplayBackButton() ‘---------------------------- %> <form method=POST action="request.asp"> <table> <tr> <td><input type=submit value="Back"></td> </tr> </table> </form> <% ‘---------------------------- End Sub ‘--------------------------- %>
WebCenter Contentサービスとの接続のためにWSDLファイルを生成できます。
WSDLファイルは、コンテンツ・サーバー・サービスによって認識可能なデータを渡せるようにします。コンテンツ・サーバー・サービスにより、WebCenter Content内のコンテンツおよびコンテンツ管理機能へのアクセスが可能になります。コンポーネントとともに提供されているWSDLファイルは、IntradocDir
/weblayout/groups/secure/wsdl/custom/
ディレクトリに格納されます。
WSDLジェネレータ・コンポーネントとともに次のWSDLファイルが提供されます。
CheckIn.wsdl
DocInfo.wsdl
GetFile.wsdl
MetaData.wsdl
PortalInfo.wsdl
Search.wsdl
Subscription.wsdl
Workflow.wsdl
SoapカスタムWSDL管理ページを使用して、追加のWSDLファイルを生成できます。詳細は、「サンプルのWSDLファイル」を参照してください。
WSDLファイルは、形式上、Webサービスに渡されるデータの説明を含む要素で構造化されます。この構造は、交換されるデータを解析するために、アプリケーションの送信とアプリケーションの受信を可能にします。
WSDL要素には、データ上で実行される操作の説明およびプロトコルまたはトランスポートへのバインディングが含まれます。これにより、データの処理と、応答する方法やデータを返す方法の解釈の両方のために、アプリケーションを受信できるようになります。各WSDL要素内に、追加のサブ要素が含まれる場合もあります。
WSDLファイル構造には、次の主要素が含まれます。
データ型: 一般に、メッセージで使用されるXMLスキーマの形式を取ります。
メッセージ: 完全なドキュメント、またはメソッド起動にマップされる引数として、メッセージの形式をとるデータの定義。
ポート・タイプ: アドレスにマップされた操作のセット。これは、バインディングのための操作のコレクションを定義します。
バインディング: 特定のポート・タイプにおける操作とメッセージで実際に使用されるプロトコルとデータ形式。
サービスとポート: サービスは、バインディングをポートにマップし、ポートは、バインディングと、通信交換のためのネットワーク・アドレスの組合せです。
注意:
次のコード・フラグメントは、WSDLジェネレータ・コンポーネントとともに提供されるDocInfo.wsdl
ファイルにあるものです。完全なWSDLファイルについては、「サンプルのWSDLファイル」を参照してください。
データ型<types>は複合型および関連する要素を定義します。Webサービスは、単純なデータ型(文字列、整数、ブールなど)と複雑なデータ型の両方をサポートします。複雑な型は、複数の単純な型またはサブ要素の配列を含む構造化されたXMLドキュメントです。
ContentInfo
セットに対する次のコード・フラグメントでは、Name
、Title
、Author
およびGroup
の各要素を定義し、それらが文字列であることを指定します。
<s:complexType name="ContentInfo"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="dDocName" type="s:string"/> <s:element minOccurs="0" maxOccurs="1" name="dDocTitle" type="s:string"/> <s:element minOccurs="0" maxOccurs="1" name="dDocType" type="s:string"/> <s:element minOccurs="0" maxOccurs="1" name="dDocAuthor" type="s:string"/> <s:element minOccurs="0" maxOccurs="1" name="dSecurityGroup" type="s:string"/> </s:sequence> </s:complexType>
メッセージ<message>は、メソッドの起動にマップされるデータを引数として定義します。
<message name="DocInfoByIDSoapIn"> <part name="parameters" element="s0:DocInfoByID" /> </message> <message name="DocInfoByIDSoapOut"> <part name="parameters" element="s0:DocInfobyIDResponse" /> </message>
ポート・タイプ<portType>は、バインディングのための操作のコレクションを定義します。DocInfo.wsdl
ファイルは、DocInfoSoap
とDocInfo
操作名(メソッド名)を、メッセージを処理するためのI/O情報とともに提供します。
<portType name="DocInfoSoap"> <operation name="DocInfoByID"> <input message="s0:DocInfoByIDSoapIn" /> <output message="s0:DocInfoByIDSoapOut" /> </operation> </portType>
注意:
ポート・タイプは、(Javaにおけるクラスと同様に)操作のコレクションです。一方、WSDLは、.NET、EJBまたはCORBAオブジェクトへの単なるマッピングよりも多くの機能を提供する、独立したデータ抽象化です。
バインディング<binding>は、特定のポート・タイプに対する操作およびメッセージの実際のプロトコルおよびデータ・フォーマットを定義します。
<binding name="DocInfoSoap" type="s0:DocInfoSoap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <operation name="DocInfoByID"> <soap:operation soapAction="http://wwww.oracle.com/Soap/DocInfo/" style="document" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> </operation> </binding>
サービス<service>は、バインディングをポートにマップします。ポートは、バインディングと、通信交換のためのネットワーク・アドレスの組合せです。ポートは、定義されたトランスポート上でポート・タイプ(操作)のセットを公開するために使用されます。
<service name="DocInfo"> <port name="DocInfoSoap" binding="s0:DocInfoSoap"> <soap:address location="http://myhost.example.com:16200/_dav/cs/idcplg" /> </port> </service>
注意:
&IsSoap=1
をコンテンツ・サーバーのブラウザ・ウィンドウのURLに追加して、そのページの基礎となるSOAPコードを表示できます。
次のサンプル・コードは、完全なDocInfo.wsdlファイルを示しています。このファイルと、CheckIn.wsdl、GetFile.wsdlおよびSearch.wsdlファイルは、コンテンツ・サーバー・インスタンスのIntradocDir/weblayout/groups/secure/wsdl/customディレクトリにあります。
<?xml version='1.0' encoding='utf-8' ?> <definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://wwww.oracle.com/DocInfo/" targetNamespace="http://wwww.oracle.com/DocInfo/" xmlns="http://schemas.xmlsoap.org/wsdl/"> <types> <s:schema elementFormDefault="qualified" targetNamespace="http://www.oracle.com/DocInfo/"> <s:element name="DocInfoByID"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="dID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="extraProps" type="s0:IdcPropertyList" /> </s:sequence> </s:complexType> </s:element> <s:element name="DocInfoByIDResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="DocInfoByIDResult" type="s0:DocInfoByIDResult" /> </s:sequence> </s:complexType> </s:element> <s:complexType name="DocInfoByIDResult"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="ContentInfo" type="s0:ContentInfo" /> <s:element minOccurs="0" maxOccurs="unbounded" name="Revisions" type="s0:Revisions" /> <s:element minOccurs="0" maxOccurs="unbounded" name="WorkflowInfo" type="s0:WorkflowInfo" /> <s:element minOccurs="0" maxOccurs="1" name="StatusInfo" type="s0:StatusInfo" /> </s:sequence> </s:complexType> <s:element name="DocInfoByName"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="dDocName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="extraProps" type="s0:IdcPropertyList" /> </s:sequence> </s:complexType> </s:element> <s:element name="DocInfoByNameResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="DocInfoByNameResult" type="s0:DocInfoByNameResult" /> </s:sequence> </s:complexType> </s:element> <s:complexType name="DocInfoByNameResult"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="ContentInfo" type="s0:ContentInfo" /> <s:element minOccurs="0" maxOccurs="unbounded" name="Revisions" type="s0:Revisions" /> <s:element minOccurs="0" maxOccurs="unbounded" name="WorkflowInfo" type="s0:WorkflowInfo" /> <s:element minOccurs="0" maxOccurs="1" name="StatusInfo" type="s0:StatusInfo" /> </s:sequence> </s:complexType> <s:complexType name="ContentInfo"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="dDocName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dDocTitle" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dDocType" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dDocAuthor" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dSecurityGroup" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dDocAccount" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dRevClassID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dRevisionID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dRevLabel" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dIsCheckedOut" type="s:boolean" /> <s:element minOccurs="0" maxOccurs="1" name="dCheckoutUser" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dCreateDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dInDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dOutDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dStatus" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dReleaseState" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dFlag1" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWebExtension" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dProcessingState" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dMessage" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dReleaseDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dRendition1" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dRendition2" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dIndexerState" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dPublishType" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dPublishState" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dDocID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dIsPrimary" type="s:boolean" /> <s:element minOccurs="0" maxOccurs="1" name="dIsWebFormat" type="s:boolean" /> <s:element minOccurs="0" maxOccurs="1" name="dLocation" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dOriginalName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dFormat" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dExtension" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dFileSize" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="CustomDocMetaData" type="s0:IdcPropertyList" /> </s:sequence> </s:complexType> <s:complexType name="Revisions"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="dFormat" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dInDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dOutDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dStatus" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dProcessingState" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dRevLabel" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dDocName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dRevisionID" type="s:int" /> </s:sequence> </s:complexType> <s:complexType name="WorkflowInfo"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="dWfID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dDocName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfDocState" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfComputed" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfCurrentStepID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="dWfDirectory" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dClbraName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfDescription" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dCompletionDate" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dSecurityGroup" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfStatus" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dWfType" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dProjectID" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="dIsCollaboration" type="s:boolean" /> </s:sequence> </s:complexType> <s:complexType name="StatusInfo"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="statusCode" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="statusMessage" type="s:string" /> </s:sequence> </s:complexType> <s:complexType name="IdcPropertyList"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="property" type="s0:IdcProperty" /> </s:sequence> </s:complexType> <s:complexType name="IdcProperty"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="name" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="value" type="s:string" /> </s:sequence> </s:complexType> </s:schema> </types> <message name="DocInfoByIDSoapIn"> <part name="parameters" element="s0:DocInfoByID" /> </message> <message name="DocInfoByIDSoapOut"> <part name="parameters" element="s0:DocInfoByIDResponse" /> </message> <message name="DocInfoByNameSoapIn"> <part name="parameters" element="s0:DocInfoByName" /> </message> <message name="DocInfoByNameSoapOut"> <part name="parameters" element="s0:DocInfoByNameResponse" /> </message> <portType name="DocInfoSoap"> <operation name="DocInfoByID"> <input message="s0:DocInfoByIDSoapIn" /> <output message="s0:DocInfoByIDSoapOut" /> </operation> <operation name="DocInfoByName"> <input message="s0:DocInfoByNameSoapIn" /> <output message="s0:DocInfoByNameSoapOut" /> </operation> </portType> <binding name="DocInfoSoap" type="s0:DocInfoSoap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <operation name="DocInfoByID"> <soap:operation soapAction="http://www.oracle.com/DocInfo/" style="document" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> </operation> <operation name="DocInfoByName"> <soap:operation soapAction="http://www.oracle.com/DocInfo/" style="document" /> <input> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> </operation> </binding> <service name="DocInfo"> <port name="DocInfoSoap" binding="s0:DocInfoSoap"> <soap:address location="http://myhost.example.com:16200/_dav/cs/idcplg/idc_cgi_isapi.dll" /> </port> </service> </definitions>
Oracle WebCenter Contentのインストール時に、WSDLジェネレータ・コンポーネントがインストールされて有効化されると、一部のサービスをWebサービスとして公開する、いくつかのフォルダおよび関連するHDAファイルが生成されます。IntradocDir
/data/soap
ディレクトリに、2つのディレクトリが作成されます。generic
ディレクトリにはgeneric.hda
ファイルが含まれ、custom
ディレクトリにはwsdl_custom.hda
ファイルが含まれます。管理者は、Soap Wsdl管理ページを使用して、WSDLファイルをカスタマイズしたり追加したりできます。それらのページにアクセスするには、「管理アプレット」ページの「管理」セクションで「Soap WSDL」リンクをクリックします。
注意:
WSDLファイルを生成するには、WSDLジェネレータ・コンポーネントを有効にする必要があります。
SoapカスタムWSDL管理ページを使用したカスタムWSDLの作成および編集に関するステップバイステップのステップについては、「WSDLファイルのカスタマイズ」を参照してください。
開発者は、WSDLファイルを使用して、開発ツールにプラグインするためのプロキシ・クラスを作成できます。WSDLファイルをJava、Visual Basic、C#などの言語のプログラミング・クラス・ファイルに変換するための、多数のソフトウェア製品およびツールキットがあります。たとえば、Apache AXISは、SOAPからJavaへの変換のためのツールキットを提供し、Microsoft .NET開発環境は、WSDLファイルをC#に変換する機能を提供しています。
Microsoft .NETを使用している場合は、utilitywsdl.exeを使用してプロキシ・クラスを生成できます。
wsdl /l:CS DocInfo.wsdl
このユーティリティは、DocInfoService
クラスおよびパラメータが指定されたDocInfo関数を含むDocInfoService.cs
ファイル(C#クラス)を生成します。戻り値は、すべてのレスポンス・パラメータが指定されたDocInfoSetクラスと、
ErrorCode
およびErrorMessage
の値です。ErrorCode
がゼロ未満の場合、サービス・コールでエラーが発生したことを示しています。その詳細は、ErrorMessage
値で確認できます。
注意:
WSDLジェネレータ・コンポーネントで提供されるWSDLファイルに加えて、任意のWebCenter Contentサービス用のWSDLファイルを生成することもできます。詳細は、「WSDLファイルの生成」を参照してください。
SoapカスタムWSDL管理ページには、管理者がWSDLファイルを編集およびカスタマイズできる機能があります。この章では、カスタムWSDLの作成および編集に関するステップバイステップのステップを説明する管理のチュートリアルを提供します。
WSDLファイルを生成するには、WSDLジェネレータ・コンポーネントを有効にする必要があります。WSDLジェネレータ・コンポーネントで提供されるWSDLファイルに加えて、任意のWebCenter Contentサービス用の追加のWSDLファイルを生成することもできます。詳細は、「WSDLファイルの生成」を参照してください。
使用可能なサービスおよび必須パラメータのリストについては、『Oracle Fusion Middleware Oracle WebCenter Contentサービス・リファレンス』のOracle WebCenter Contentサービスのリストに関する項を参照してください。
SoapカスタムWSDL管理ページを使用してカスタムWSDLファイルを作成および編集する手順は次のとおりです。