SharePoint で Oracle データベース アダプターを使用する
Visual Studio 用 WCF アダプター サービス開発ウィザードを使用すると、Microsoft BizTalk Adapter for Oracle Database と Microsoft BizTalk Adapter for Oracle E-Business Suite を Microsoft SharePoint の外部データソースとして直接使用できます。 この機能をサポートするサービス開発の追加ウィザードは、Visual Studio で新しい Visual C# Web サイトを作成するための WCF アダプター サービス テンプレートを使用して起動されます。 このテンプレートは、BizTalk アダプター パックに含まれています。 また、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK もインストールする必要があります。
SharePoint 操作のサポート
アダプター サービス開発ウィザードでは、Microsoft SharePoint と互換性のある Oracle アダプター用の特別なサービス コントラクトが生成されます。 ウィザードは、アダプターを Microsoft SharePoint と統合するための次の操作を含むサービス コントラクトを生成します。
作成: CreateItem_操作でサポートされます。
読む: ReadItem_操作でサポートされます。
更新: UpdateItem_操作でサポートされます。
削除: DeleteItem_操作でサポートされます。
クエリ: ReadList 操作でサポートされます。
関連付ける: Associate_操作でサポートされます。
次のサービス コントラクトは、例として Microsoft BizTalk Adapter for Oracle Database に を使用して生成されました。 アダプターは、EMP テーブルへのアクセスを提供するように構成されています
[System.ServiceModel.ServiceContractAttribute()]
public interface ISCOTT_EMP {
[System.ServiceModel.OperationContractAttribute()]
SCOTT_EMP_Record[] ReadList(System.Nullable<int> Limit);
[System.ServiceModel.OperationContractAttribute()]
void CreateItem(SCOTT_EMP_Record Input);
[System.ServiceModel.OperationContractAttribute()]
SCOTT_EMP_Record[] ReadItem_EMPNO(System.Nullable<decimal> EMPNO);
[System.ServiceModel.OperationContractAttribute()]
void UpdateItem_EMPNO(SCOTT_EMP_Record Input);
[System.ServiceModel.OperationContractAttribute()]
void DeleteItem_EMPNO(System.Nullable<decimal> EMPNO);
[System.ServiceModel.OperationContractAttribute()]
SCOTT_EMP_Record[] Associate_DEPTNO(System.Nullable<decimal> DEPTNO);
}
IIS で Oracle データベースをホストする新しい Web サイトを作成する
次の手順では、WCF アダプター サービス開発ウィザードを使用して、Microsoft BizTalk Adapter for Oracle Database をホストする新しい WCF Web サービスを作成する例を示します。 サービス コントラクトには、Sharepoint と直接互換性のある操作が含まれます。 外部データソースとして直接使用できるようにします。 アダプターは、 SCOTT アカウントを使用して Oracle データベースで認証するように構成されています。 SCOTT アカウントがロックされている場合は、SQL Plus に SYSDBA としてログインすることで、アカウントのロックを解除できます。
<Oracle Installation Bin Directory>\Sqlplus.exe SYS AS SYSDBA
次に、次のコマンドを実行します。
SQL> ALTER USER scott ACCOUNT UNLOCK;
新しい Web サイト プロジェクトを作成する
Visual Studio を開きます。
Visual Studio の [ ファイル ] メニューの [ 新規作成 ] を選択し、[ プロジェクト] をクリックします。
[ 新しいプロジェクト ] ダイアログ ボックスで、[ その他の言語 ] を展開し、[ Visual C#] をクリックします。 テンプレートの一覧で WCF アダプター サービス を見つけてクリックして選択します。
Note
BizTalk アダプター パック 2013 がインストールされていない場合、 WCF アダプター サービス テンプレートは使用できません。 x64 システムでは、BizTalk アダプター パック 2013 の x86 バージョンと x64 バージョンの両方をインストールします。
名前に ScottEMP を指定し、[OK] をクリック します。 WCF アダプター サービス開発ウィザードが起動します。
[説明] ページで [次へ] をクリックします。
[ 操作の選択 ] ページで、 oracleDBBinding バインドを 指定します。
[構成] をクリックします。 [ アダプターの構成] ダイアログが表示されます。
[セキュリティ] タブの [クライアント資格情報の種類] ドロップダウン リスト ボックスで [ユーザー名] を選択します。
[ユーザー名] に 「SCOTT 」と入力し、SCOTT アカウントの正しいパスワードを入力します。 SCOTT アカウントの既定のパスワードは tiger です。
[ URI のプロパティ ] タブをクリックし、[ ServerAddress ] ボックスに Oracle サーバーの IP アドレスまたはホスト名を入力します。
[ ServiceName ] ボックスに正しい Oracle データベース サービス インスタンス名を入力します。 インスタンス名の情報は、Oracle Enterprise Manager からコピーできます。
[アダプターの構成] ダイアログの [OK] ボタンを押します
ウィザードの [ 操作の選択 ] ページで、[ 接続 ] ボタンをクリックし、Oracle データベース用にカテゴリが作成されるまでしばらく待ちます。
[カテゴリの選択] リストに カテゴリが 追加されたら、 SCOTT まで下にスクロールして展開します。 次に、[ テーブル ] を展開し、 EMP テーブルエントリをクリックします。
[ 利用可能なカテゴリと操作 ] の一覧で、一覧のすべての操作を選択し、[ 追加 ] ボタンをクリックします。 すべての操作が [ 追加されたカテゴリと操作 ] の一覧に追加されます。
[ 操作の選択 ] ページで、[ 次へ ] ボタンをクリックします。
[ サービスとエンドポイントの動作の構成] ページで、この例の UseServiceCertificate サービスの動作を false に設定します。 次に、[ 次へ ] ボタンをクリックします。
[ サービス エンドポイントのバインドとアドレスの構成 ] ページで、[ 適用 ] ボタンをクリックします。 次に、[ 次へ ] ボタンをクリックします。
[ 概要 ] ページで、[ 完了 ] ボタンをクリックします。
[ ビルド ] メニュー オプションをクリックし、[ ソリューションのビルド] をクリックします。 エラーなしでプロジェクトのビルドが成功したことを確認します。
新しいサービスを IIS に発行する
この例では、アダプター ホスト サービスをローカル IIS Web サーバーに発行します。
Visual Studio のソリューション エクスプローラーで、ScottEmp プロジェクトを右クリックし、[プロパティ] をクリックします。 [プロジェクト Designer] タブが表示されます。
[ Web ] タブをクリックし、[ ローカル IIS Web サーバーを使用 する] オプションをクリックします。
[仮想ディレクトリの作成] ボタンをクリックします。
サービス アドレス http://localhost/ScottEmp/ISCOTT_EMP.svcの Web ブラウザーを開きます。 アダプターが IIS でホストされていることを示す "サービスを作成しました" というメッセージが表示されます。
SharePoint Designerを使用して SharePoint サイトに外部データ ソースを追加する
このセクションでは、SharePoint Designerを使用して、WCF サービスを外部データ ソースとして新しい Web サイトに追加する方法について説明します。
SharePoint Designerを開き、新しい Web サイトを作成します。
SharePoint Designerで、[ナビゲーション] を展開し、[サイト オブジェクト] リストの [外部コンテンツ タイプ] をクリックします。
[ 外部コンテンツ タイプ ] メニュー ボタンをクリックして、新しい外部コンテンツ タイプを作成します。
[名前] の横にあるテキストをクリックして、新しい外部コンテンツ タイプの名前を編集します。 名前 として「OracleEMP 」と入力します。
[ 外部システム ] の横にあるテキスト リンクをクリックします。このリンクを クリックすると、外部データ ソースと操作が検出されます。 これにより、OracleEMP 外部コンテンツ タイプの操作Designerが開きます。
検出画面の [ 接続の追加] ボタンをクリックします。
[外部データ ソースの種類の選択] ダイアログで、[ WCF サービス ] を選択し、[OK] ボタンをクリック します 。
[WCF 接続] ダイアログの [ サービス メタデータ URL ] ボックスに「」と入力します。 https://localhost/ScottEmp/ISCOTT_EMP.svc?wsdl
[ サービス エンドポイント URL ] ボックスに「」と入力します。 https://localhost/ScottEmp/ISCOTT_EMP.svc
[ OK ] ボタンをクリックして、[WCF 接続] ダイアログを閉じます。
データ ソース情報が入力されたら、データ ソースを https://localhost/ScottEmp/ISCOTT_EMP.svc 展開し、[ Web メソッド] を展開します。
ReadList Web メソッドを右クリックし、[新しい読み取りリスト操作] をクリックします。 [リストの読み取り] 構成ダイアログが起動します。
[リストの読み取り] ダイアログで、[ 戻り値のパラメーター] をクリックし、[データ ソース要素] の [ EMPNO ] をクリックします。 [ 識別子にマップ] をクリックします。
[リストの読み取り] ダイアログで [ 完了] をクリックします。
Ctrl + s キーを押して、新しい外部データ ソースを保存します。
外部データ ソース接続をテストする
新しい Web サイトで、[ リストとフォームの作成 ] ボタンをクリックします。 [Create List and Form for OracleEMP]\(OracleEMP のリストとフォームの作成\) ダイアログが表示されます。
[リスト名 ] に「OracleEMP_List 」と入力し、[ OK ] ボタンをクリックします。
リストが作成されたら、メニューの [概要ビュー ] ボタンをクリックします。
[外部リスト] の [OracleEMP_List ] をクリックします。
メニュー の [ブラウザーでプレビュー ] ボタンをクリックして、アダプターの ReadList 操作をテストします。
トラブルシューティング
- 64 ビット コンピューターでは、32 ビット Oracle クライアント コンポーネントもインストールされていることを確認する必要があります。 これは、Visual Studio とウィザードが、開発中に 32 ビット コンポーネントへのアクセスを必要とする 32 ビット プロセスとして実行されるためです。