このチュートリアルでは、トランザクションのコンテキスト内でCoherenceキャッシュを使用する方法について説明します。
約1時間
Oracle Coherenceは、トランザクション・フレームワークを提供します。このフレームワークは、次のようなさまざまな要素で構成されています。
必要なソフトウェアは、以下のとおりです。
このチュートリアルを始める前に、以下のことを確認してください。
|
. |
WebLogic Server 10.3.4をダウンロードしてインストールしていること(Coherence 3.6およびEclipseとOracle Enterprise Pack for Eclipseを含む)。 Coherence 3.6が含まれたWebLogic Serverパッケージは、こちらからダウンロードできます。
|
|---|---|
|
. |
次のドキュメントを参照すること。 |
アプリケーションを実行する場所が必要です。 以下の手順で、アプリケーションを配置するためにEclipseから使用できる、シンプルなWebLogicドメインを作成します。
|
. |
ドメイン構成ウィザードを使用してOracle WebLogic Serverドメインを作成する方法について説明しているドキュメントを参照します。このドメインの作成方法を説明しているドキュメントを参照するには、こちらをクリックします。
|
|---|---|
|
. |
「スタート」→「すべてのプログラム」→「Oracle WebLogic」→「WebLogic Server 11gR11」→「Tools」→「Configuration Wizard」の順に選択して、WebLogic Domain Configuration Wizardを実行します。
|
|
. |
Welcomeダイアログ・ボックスで、「Create a new WebLogic domain」を選択し、「Next」をクリックします。
|
|
. |
Select Domain Sourceダイアログ・ボックスで、すべてのオプションの選択を解除したままにして、「Next」をクリックします。
|
|
. |
Specify Domain Name and Locationダイアログ・ボックスで、Domain nameフィールドに適切なドメイン名を入力します。Domain locationフィールドに、ドメインを配置するディレクトリへのパスを入力し、「Next」をクリックします。 このチュートリアルでは、ドメインにcoh_domainという名前を指定し、d:\domainsに配置しています。
|
|
. |
Configure Administrator User Name and Passwordダイアログ・ボックスで、適切なパスワードを入力します。 このチュートリアルでは、Welcome1を使用しています。両方のパスワードが同一であることを確認し、「Next」をクリックします。
|
|
. |
Configure Server Start Mode and JDKダイアログ・ボックスで、「Next」をクリックします。 このチュートリアルでは、Sun JDKを選択していますが、 JRockitを選択することもできます。
|
|
. |
Select Optional Configurationダイアログ・ボックスで、すべてのチェック・ボックスの選択を解除したままにして、「Next」をクリックします。
|
|
. |
Configuration Summaryダイアログ・ボックスで、値を確認して「Next」をクリックします。
|
|
. |
Creating Domainダイアログ・ボックスが表示されます。Start Admin Serveチェック・ボックスの選択が解除されていることを確認し、進行状況が100%に達したら、「Done」をクリックします。
|
|
. |
Eclipseを起動します。 このチュートリアルでは、次のようなコマンドを使用して、コマンドラインからEclipseを起動できます。 |
|---|---|
|
. |
Eclipse Workspace Launcherが表示されたら、ワークスペースの場所を選択します。 このチュートリアルでは、D:\oracle\tutorialを使用しています。 以降、この場所を$WORKSPACEとします。
|
|
. |
Eclipseワークスペースを開いた状態で、「X」をクリックして、表示されているWelcome画面を終了します。
|
|---|---|
|
. |
EclipseのHelpメニューから、「Install New Software」を選択します。
|
|
. |
URL:http://download.oracle.com/otn_software/oepe/heliosを入力し、[Enter]を押します。Eclipse Heliosに利用できるすべての更新が表示されます。
|
|
. |
「Oracle Enterprise Pack for Eclipse」(展開された状態で表示)を選択し、「Next > 」をクリックします。
|
|
. |
プロンプトの指示に従って、インストールを完了します。 完全なインストールを実行した場合、OEPEはWebLogic Server 10.3.4にインストール済みの状態になります。
|
|
. |
Eclipseを起動します。 |
|---|---|
|
. |
まず、エンタープライズ・アプリケーション・プロジェクトを作成します。 「File」→「New」の順に選択し、「Project」を選択します(または[Ctrl]+[N]を押します)。ポップアップ・ウィンドウで、Java EEカテゴリの「Enterprise Application Project」を選択します。
「Next > 」をクリックします。 |
|
. |
Project nameフィールドにプロジェクト名を入力します。 このチュートリアルでは、プロジェクトにCoherenceTXという名前を指定しています。「New Runtime」ボタンをクリックしてから、「Next > 」ボタンをクリックします。 注:以前にランタイムを作成している場合は、新しいランタイムを作成せずに、以前に作成したランタイムを選択できます。 |
|
. |
Define a new server runtime environmentダイアログ・ボックスで、「Oracle WebLogic Server 11gR1 PatchSet3」を選択します。 「Next > 」をクリックします。 |
|
. |
Define a WebLogic Runtimeダイアログ・ボックスで、WebLogic homeフィールドにWebLogic Serverインスタンスへの完全修飾パスを入力します。 このチュートリアルでは、WebLogicはD:\oracle\Middlewareにインストールしており、Browseボタンを使用して、インストースされたインスタンスを検索しています。 Java homeフィールドは自動的に入力されます。 このフィールドは空白のままにします。 「Next > 」をクリックします。 |
|
. |
ConfigurationセクションのDomain Directoryフィールドに、前に作成したドメインの完全修飾パスを入力します。 このチュートリアルでは、ドメインはD:\oracle\domains\coh_domainに作成しています。 「Finish」をクリックします。 |
|
. |
ターゲット・ランタイムが設定されたEARアプリケーション・プロジェクトは、次のように表示されます。 「Next > 」をクリックします。 |
|
. |
Configure enterprise application settingsダイアログ・ボックスで、Generate application.xml deployment descriptorチェック・ボックスが選択されていることを確認します。 「Finish」をクリックします。 注:Java EEパースペクティブを開くことを示すOpen Associated Perspectiveダイアログ・ボックスが表示されたら、「Yes」をクリックします。 |
|
. |
EclipseのProject Explorerペインに、空のエンタープライズ・アプリケーションが表示されます。展開した場合、次のように表示されます。 ![]() アプリケーションに多くのエラーが表示されます。 これは、エンタープライズ・アプリケーションがEJB、Webアプリケーション、およびその他のアーチファクトに依存しているためです。 |
|
. |
まず、エンタープライズ・アプリケーション・プロジェクトを作成します。 「File」→「New」の順に選択し、「Project」を選択します(または[Ctrl]+[N]を押します)。ポップアップ・ウィンドウで、Webカテゴリの「Dynamic Web Project」を選択します。 ![]() |
|---|---|
|
. |
プロジェクト名を入力します。 このチュートリアルでは、プロジェクトにCoherenceWEBという名前を指定しています。EAR membershipセクションで、Add project to an EARチェック・ボックスが選択されていることを確認します。 CoherenceTX EARプロジェクト名が自動的に選択されます。 ワークスペースにその他のEARプロジェクトがある場合、「CoherenceTX」プロジェクトを選択します。 ![]() |
|
. |
Javaダイアログ・ボックスで、変更を加えずに「Next > 」をクリックします。 ![]() |
|
. |
Web Moduleダイアログ・ボックスで、変更を加えずに「Finish」をクリックします。 Generate web.xml deployment descriptorチェック・ボックスが選択されています。 「Finish」をクリックします。 ![]() |
Coherenceは、リソース・アダプタを使用してトランザクションをサポートします。 リソース・アダプタを使用するには、多くのアプリケーション設定とファイルを変更する必要があります。 以下のような変更が必要になります。
|
. |
サポート・マテリアルをダウンロードします。 これらのサポート・マテリアルは、コード、XMLスニペット・ファイル、およびその他の便利なリソースを組み合わせたものです。これらのリソースは、こちらからダウンロードできます。 |
|---|---|
|
. |
一時的な場所にファイルを解凍します。 このチュートリアルでは、これらのファイルはダウンロード後、デスクトップのcoh_tx_obe_supportディレクトリに展開しています。 |
|
. |
CoherenceTXアプリケーションを展開すると、CoherenceTX\EarContentフォルダが表示されます。 |
|
. |
coh_tx_obe_support\coherenceディレクトリから、coherence-transaction.rarファイルをCoherenceTX\EarContentディレクトリにドラッグします。 CopyまたはLinkを選択するよう表示されたら、「Copy」を選択し、「OK」をクリックします。更新されたアプリケーションは、次のように表示されます。 ![]() Coherenceトランザクション・アダプタの追加は、コネクタとしてアプリケーションに登録する必要があります。 |
|
. |
CoherenceTX\EarContent\META-INFディレクトリに移動して、application.xml.を開きます。 |
|
. |
Designタブで、最後のモジュール・エントリを選択します。 右クリックし、「Add After」を選択します。 新しいコネクタで、tokenをコネクタのRARファイルの名前であるcoherence-transaction.rarに置き換えます。 |
|
. |
Sourceビューで、更新されたapplication.xmlファイルは次のように表示されます。![]() 変更を保存します。 |
|
. |
最後に、CoherenceTX/EarContent/APP-INF/libディレクトリに移動します。 |
|
. |
ダウンロード・ディレクトリcoh_tx_obe_support/coherenceから、「coherence.jar」をクラス・ディレクトリにドラッグします。 CopyまたはLinkを選択するよう表示されたら、「Copy files」を選択し、「OK」をクリックします。 最終的には、次のように表示されます。 |
|
. |
「CoherenceTX\EarContent\APP-INF\classes」フォルダを展開します。 |
|---|---|
|
. |
ダウンロード・ディレクトリcoh_tx_obe_support/coherenceから、「coherence-cache-config.xml」をclassesディレクトリにドラッグします。 CopyまたはLinkを選択するよう表示されたら、「Copy files」を選択し、「OK」をクリックします。 |
|
. |
ファイルを開き、ソース・ビューで下方向にスクロールして、<caching-scheme-mapping>セクションを見つけます。 |
|
. |
caching-scheme-mapping要素の直後に、次のような新しいキャッシュ・マッピングを追加します。 <cache-mapping> <cache-name>tx-*</cache-name> <scheme-name>example-transactional</scheme-name> </cache-mapping> この追加のような貼り付け可能なXMLのスニペットは、coh_tx_obe_support/xml/coherence-cache-config.snippet.txtファイルにあります。 |
|
. |
完全な追加は次のようになります。新しいコードは太字で示されています。 <caching-scheme-mapping> <cache-mapping> <cache-name>tx-*</cache-name> <scheme-name>example-transactional</scheme-name> </cache-mapping> <cache-mapping> |
|
. |
<caching-schemes>セクションを見つけます。 |
|
. |
<caching-schemes>要素の直後に、次のように新しいスキーマを追加します。 <transactional-scheme> <scheme-name>example-transactional</scheme-name> <scheme-ref>base-transactional</scheme-ref> <thread-count>10</thread-count> </transactional-scheme> <transactional-scheme> <scheme-name>base-transactional</scheme-name> <service-name>TransactionalCache</service-name> <request-timeout>30000</request-timeout> <autostart>true</autostart> </transactional-scheme> この追加のような貼り付け可能なXMLのスニペットは、coh_tx_obe_support/xml/coherence-cache-config.snippet.txtファイルにあります。 |
|
. |
変更を保存し、エディタを終了します。 |
|
. |
前に作成した「CoherenceWEB」アプリケーションを選択します。 |
|---|---|
|
. |
右クリックし、「Properties」を選択します。 |
|
. |
Propertiesダイアログ・ボックスで、「Java Build Path」を選択し、「Libraries」タブをクリックします。 |
|
. |
「Add External JARs」をクリックし、JAR Selectionダイアログ・ボックスでd:\oracle\Middleware\coherence3.6\libフォルダに移動し、「coherence.jar」ファイルを選択します。 「Open」をクリックします。 |
|
. |
Java Build Pathダイアログ・ボックスにcoherence.jarファイルが表示されます。 「OK」をクリックします。 |
|
. |
メニューから、「File」→「Import」の順に選択します。 |
|
. |
Importダイアログ・ボックスで、「General」を展開し、「File System」を選択します。 「Next > 」をクリックします。 |
|
. |
Browseボタンを使用して、coherence obeサポートディレクトリの「code」フォルダを選択します。 「OK」をクリックします。 |
|
. |
「Tests.java」クラスを選択します。 |
|
. |
Into folderのBrowseボタンを使用して、「CoherenceWEB/src」を選択します。 「Finish」をクリックします。 |
|
. |
新しいクラスがCoherenceWEBアプリケーションに追加されます。 ![]() 新しく追加されたテスト・クラスはJavaサーブレットであるため、Webアプリケーションに登録する必要があります。 |
|
. |
「Deployment Descriptor: CoherenceWeb」フォルダを展開します。 |
|
. |
「Servlets」を選択して右クリックし、「New」→「Servlet」の順に選択します。 |
|
. |
Create Servletダイアログ・ボックスで、「Use an existing Servlet class or JSP」を選択し、インポートされたクラスTestsを参照します。 「Finish」をクリックします。 |
|
. |
すべて小文字のクラス名を使用して、クラスにサーブレットのデフォルト・マッピングが生成されました。 |
|
. |
CoherenceWEB/WebContent/WEB-INFフォルダに移動します。 ![]() |
|---|---|
|
. |
web.xmlファイルを開いて「Source」タブをクリックし、<servlet- mapping>要素の後ろに次のようなリソース参照を追加します。 <resource-ref> <res-ref-name>eis/CoherenceTxCF</res-ref-name> <res-type>com.tangosol.coherence.transaction.ConnectionFactory</res-type> <res-auth>Container</res-auth> </resource-ref> 変更を保存します。 便宜上、webapp.snippet.web.txtという名前のスニペット・ファイルが、提供されたソースのこのリソース参照が含まれているXMLディレクトリに作成されます。 |
|
. |
weblogic.xmlを開いて「Source」タブを選択し、<wls:context-root>要素の後ろに次のようなリソース記述を追加します。 <wls:resource-description> <wls:res-ref-name>eis/CoherenceTxCF</wls:res-ref-name> <wls:jndi-name>tangosol.coherenceTx</wls:jndi-name> </wls:resource-description> 変更を保存します。 便宜上、webapp.snippet.weblogic.txtという名前のスニペット・ファイルが、提供されたソースのこのリソース記述が含まれているXMLディレクトリに作成されます。 |
Eclipseでは、アプリケーションをパッケージ化して、アプリケーション・サーバーの実行中のインスタンスに展開できます。ただし、Eclipseでは、リソース・アダプタをパッケージする際、すべてのRARファイルが省略されます。 以下の手順で、エクスポートを使用してアプリケーションをパッケージ化し、WebLogic Server Consoleを使用して配置します。
|
. |
「CoherenceTX」アプリケーションを選択します。 |
|---|---|
|
. |
右クリックし、「Export」を選択し、「EAR file」を選択します。 |
|
. |
エクスポート・ファイルの名前を入力します。 このチュートリアルでは、 D:\TEMP\CoherenceTX.earファイルを使用しています。 「Finish」をクリックします。 |
|
. |
Eclipseを最小化します。 |
|
. |
コマンド・プロンプトを開いて、ディレクトリをCoherenceドメインを作成したディレクトリに変更します。 このチュートリアルでは、このディレクトリはd:\oracle\domains\coh_domainです。 |
|
. |
次のようなコマンドを使用して、WebLogic Serverを起動します。 start d:\oracle\domains\coh_domain\startWebLogic.cmd この起動コマンドは非常に便利です。 |
|
. |
Firefoxなどの使い慣れたブラウザを開いて、次のURLを入力します。 http://localhost;:7001/console |
|
. |
ドメインの作成時に使用したユーザー名とパスワードを使用して、WebLogic Consoleにログインします。 |
|
. |
「Preferences」ボタンをクリックします。 |
|
. |
「Automatically Acquire Lock and Activate Changes」の選択を解除します。 「Save」をクリックします。 |
|
. |
Domain Structureペインで、「Deployments」をクリックします。 |
|
. |
Summary of Deploymentsペインで、Deploymentsセクションの「Install」をクリックします。 |
|
. |
Pathにエンタープライズ・アプリケーションをエクスポートしたディレクトリを指定し、一覧からアプリケーションを選択します。 複数のアプリケーションが存在する場合は、正しいアプリケーションを選択していることを確認します。 このチュートリアルでは、使用しているファイル名はCoherenceTX.earです。 「Next」をクリックします。 |
|
. |
Install Application Assistantペインで、Install this deployment as an applicationが選択されていることを確認します。 「Next」をクリックします。 |
|
. |
Optional Settingsペインでは、変更を加えません。 「Finish」をクリックします。 |
|
. |
Change Centerで、「Activate Changes」をクリックします。 |
|
. |
別のタブで、URL:http://localhost:7001/CoherenceWEB/testsを入力してアプリケーションを実行します。 |
|
. |
提供されたテストを試します。各テストを、それらのテストを実装するコードで比較します。 |
このチュートリアルでは、Eclipseを使用してエンタープライズ・アプリケーションを作成し、リソース・アダプタを用いて作成したアプリケーションでCoherenceを使用できるようにする方法を検証しました。
このチュートリアルで学習した内容は、以下のとおりです。
![]()
|
会社情報 |オラクルとサン | |