ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Event Processing for Oracle Java Embeddedスタート・ガイド
11g リリース1 (11.1.1.7)
E53002-01
  目次へ移動
目次

前
 
次
 

1 Oracle Event Processing for Oracle Java Embeddedの概要

この章では、埋込み環境での使用に向けて設計されたイベント処理サーバーである、Oracle Event Processing for Oracle Java Embeddedの概要を説明します。埋込みリリースに固有の機能およびユースケースを紹介し、Oracle Event Processingドキュメントの詳細情報へのリンクを示します。

このガイドでは、Oracle Event Processing for Oracle Java Embeddedを紹介し、インストール情報について説明します。Oracle Event Processing for Oracle Java Embeddedの機能は、Oracle Event Processingの機能のサブセットになっていることに注意してください。Oracle Event Processingの詳細は、『Oracle Fusion Middleware Oracle Event Processingスタート・ガイド』を参照してください。

この章には次の項が含まれます:

1.1 Oracle Event Processing for Oracle Java Embeddedの紹介

Oracle Event Processing for Oracle Java Embeddedは、埋込み環境(Java Embedded Suite (JES)でサポートされている環境など)でイベント処理アプリケーションをサポートするサーバーです。

イベント処理アプリケーションは、イベントを表す大量のストリーミング・データを受け取る可能性があり、そのイベント・データに基づいてリアルタイムで応答します。Oracle Event Processing for Oracle Java Embeddedは、多くの場合イベント・ソースまたはその近くにある埋込み環境にデプロイされたアプリケーションをサポートするように設計されています。これらの環境には、環境条件などのセンサーや、車両またはモバイル機器などの移動するソースが含まれます。

これらの場所にイベント処理アプリケーションをデプロイすることにより、イベント・ソースまたはその近くにあるイベントをフィルタ処理し、エンタープライズ・サーバー上のOracle Event Processingを含む、その他のサーバー・リソースの中を流れるネットワーク・トラフィックの量を減らすことができます。

Oracle Event Processing for Oracle Java Embeddedには、Oracle Event Processingで使用可能な機能のサブセットが含まれます。また、埋込み環境に固有の機能も含まれます。含まれている機能および省略されている機能のリストについては、第1.1.2項「Oracle Event Processing for Oracle Java Embeddedに含まれている機能」を参照してください。

1.1.1 Oracle Event Processing for Oracle Java Embeddedのユースケース

この項で説明されているユースケースは、Oracle Event Processing for Oracle Java Embeddedアプリケーションに固有の用途を示しています。

温度分析

ある会社が、部分的に住宅用サーモスタットの温度イベントを監視することにより、「スマート・ホーム」サービスを提供しています。この会社では、イベント分析に対してよりきめ細かな制御を行い、ネットワーク・トラフィックを削減したいと考えています。

会社では、多くの場所に設置されているサーモスタットからインターネットを介して温度イベントを受信しています。サーモスタットから得られたデータを使用して、パターンおよび考えられるアラート条件を特定します。

サーモスタット装置に埋め込まれているOracle Event Processing for Oracle Java Embeddedアプリケーション内で、Oracle CQL問合せにより、イベント・データが集計され、しきい値分析が行われてから、インターネットを介してイベントが送信されます。結果的に、受信されたイベントは、注目に値するものとすでに見なされています。

サーバー室の監視

データ管理デバイスおよびサービスを提供するある企業は、総所有コストを削減するため、データ・センターのコーディネーションとエネルギー管理を改善する必要があります。この企業にとって必要なのは、より詳細なセンサーおよびデータ・センターのレポートです。

この企業は現在、異種リソースからエネルギー使用状況に関するセンサー・データを受信しています。各センサーからのデータを個別に分析し、その妥当性を確認した上で、他のセンサーからのデータと集約し、エネルギーをより効率的に使用できるパターンを特定する必要があります。

個別にデプロイされるOracle Event Processingアプリケーションは、2層のアプローチを提供します。1つの層では、ネットワークのいちばん端にあるセンサーが、データをゲートウェイ・デバイスに送信する、イベント・ソースとなっています。これらのデバイスは、Java SE、Java Embedded Suite (JES)およびOracle Event Processing for Oracle Java Embeddedを実行しています。デバイス上のOracle Event Processing for Oracle Java Embeddedアプリケーションは、Oracle Continuous Query Language (Oracle CQL)としてインテリジェント機能を適用し、センサーによって生成されたイベントをフィルタ処理します。このようにして、フィルタ基準を満たすイベント・データのみが、データセンターのバックエンド・サーバーに送信されます。これらのバックエンド・サーバーは、このアプローチのもう1つの層になります。Oracle Event Processingアプリケーションを通して、必要に応じてアラートを送信します。また、システム全体からのデータの集約と相関分析を行い、整合性に関する問題を特定し、パターンについてのレポートに使用するデータを生成します。

1.1.2 Oracle Event Processing for Oracle Java Embeddedに含まれる機能

Oracle Event Processing for Oracle Java Embeddedには、Oracle Event Processingで提供されている機能のサブセットが含まれています。このサブセットは、埋込み環境におけるイベント処理の特定のアプリケーション・ニーズをサポートするように設計されています。この項では、含まれている機能と含まれていない機能を示します。

埋込みアプリケーションの含まれていない機能の使用に関するツール関連の警告はないということに注意してください。つまり、Oracle Event Processing for Oracle Java Embeddedサーバーに含まれていない機能が、Eclipse IDEでまだサポートされているように見える可能性があります。IDEを使用してアプリケーションを開発する際には、Oracle Event Processing for Oracle Java Embeddedでサポートされているサーバー機能のみがアプリケーションに含まれていることに注意してください。

埋込みリリースに含まれている機能は、Oracle Event Processingで提供される機能と同じです。

表1-1 Oracle Event Processing for Oracle Java Embeddedに含まれる機能

機能 注意

プログラミング・モデル

従来のOracle Event Processingと同様に、埋込みアプリケーションをイベント処理ネットワーク(EPNs)として開発します。高可用性およびスケーラビリティのチューニングをサポートする機能を含め、プログラミング・モデルの一部の機能はサポートされていません

詳細は、『Oracle Fusion Middleware Oracle Event Processing for Eclipse開発者ガイド』のOracle Event Processingのプログラミング・モデルに関する項を参照してください。

Oracle Continuous Query Language (CQL)

Oracle CQLは、表1-2に示されているカートリッジによって提供される機能を除き、サポートされます。

Javaカートリッジ

Javaカートリッジは、Oracle CQLコードでJavaコードを起動する機能によりOracle CQLを強化します。

詳細は、『Oracle Fusion Middleware Oracle Event Processing CQL言語リファレンス』のOracle Javaデータ・カートリッジに関する項を参照してください。

データ・ソースへのアクセス

このリリースは、Java Embedded Suite (JES)に含まれるドライバを介して、Java DBへのアクセスをサポートしています。config.xmlファイルを使用して、標準的な方法でデータソースを構成できます。

データベースへのアクセスの詳細は、第1.2項「Oracle Event Processing for Oracle Java Embeddedアプリケーションおよび開発フレームワーク」を参照してください。

RESTful Webサービス

Java Embedded Suiteに含まれているJersey JAX-RSサポートを通して、RESTful Webサービスを実装できます。詳細は、「REST Webサービスのサポート」を参照してください。

ローカル・キャッシュ

含まれているローカル・キャッシュ・サービスを使用できます。このリリースではCoherenceキャッシュはサポートされていません。キャッシュのサポートの詳細は、第1.2項「Oracle Event Processing for Oracle Java Embeddedアプリケーションおよび開発フレームワーク」を参照してください。

セキュリティ

認証、SSLおよびユーティリティ(policygen、cssconfigおよびencryptMSAConfigなど)を含みます。

cssconfigおよびencryptMSAConfigの詳細は、『Oracle Fusion Middleware Oracle Event Processing管理者ガイド』のセキュリティ・ユーティリティのコマンドライン・リファレンスに関する項を参照してください。policygenの詳細は、第1.6.1項「policygenコマンドライン・ユーティリティ」を参照してください。

Jetty (HTTPS)サービス

Oracle Event Processing for Oracle Java EmbeddedのJettyの詳細は、第1.2項「Oracle Event Processing for Oracle Java Embeddedアプリケーションおよび開発フレームワーク」を参照してください。

構成

構成ウィザードのサイレント・モードを使用して、ドメインを作成および構成できます。詳細は、第1.3項「ドメインの作成およびサーバーの構成」を参照してください。

デプロイヤ

コマンドラインからDeployerツールを使用してアプリケーションをデプロイできます。

Oracle Event Processing for Oracle Java EmbeddedのDeployerのサポートの詳細は、第1.5項「Oracle Event Processing for Oracle Java Embeddedアプリケーションのデプロイ」を参照してください。

管理ツール

wlevs.Adminの使用方法の詳細は、第1.6項「Oracle Event Processing for Oracle Java Embeddedアプリケーションの管理」を参照してください。

JMXによる管理

このリリースは、Java Management Extensions (JMX)による管理をサポートしています。

Oracle Event Processing for Oracle Java EmbeddedのJMXの詳細は、第1.6項「Oracle Event Processing for Oracle Java Embeddedアプリケーションの管理」を参照してください。

ロギング

ロギングの詳細は、『Oracle Fusion Middleware Oracle Event Processing管理者ガイド』のロギングとデバッギングの構成に関する項を参照してください。


表1-2は、Oracle Event Processing for Oracle Java EmbeddedでサポートされていないOracle Event Processingの機能を示しています。これらの機能を使用するアプリケーションをデプロイしようとすると、デプロイメントまたはランタイムのエラーや障害が発生する場合があります。

開発の初期段階に一部の機能(ロード・ジェネレータやCSVアダプタなど)を使用することが有益である場合があります(アプリケーションを埋込み環境にデプロイする前に、これらのサポートが解除される場合)。

表1-2 Oracle Event Processing for Oracle Java Embeddedに含まれていない機能

機能 注意

クラスタ化

埋め込まれたアプリケーションをクラスタ化することはできません。

Coherenceキャッシュ

含まれているローカル・キャッシュ・サービスによるキャッシュをサポートしています。

Oracle Event Processing Visualizer


アプリケーションを管理するユーザー・インタフェースとして、Oracle Event Processing Visualizerは使用できません。含まれているコマンドライン・ツール(デプロイヤや管理ツールなど)を使用して、アプリケーションを管理できます。

HTTPパブリッシュ・サブスクライブ・サーバーおよびアダプタ

このリリースには、HTTPパブリッシュ・サブスクライブ・サーバーは含まれていません。

JMSアダプタおよびWebLogic Server JMSクライアントAPI

このリリースには、JMSのサポートは含まれていません。

CSVファイル・アダプタ

このリリースには、テスト・イベント・データとしてCSVファイルを使用するためのアダプタは含まれていません。

ロード・ジェネレータ

このリリースには、イベント・データを生成するためのツールは含まれていません。

イベントの記録および再生

このリリースには、テストやデバッグのためにイベント・アクティビティを記録したり再生する機能は含まれていません。

JDBCドライバ(SQL Server、Oracle JDBCおよびBerkeley DB用のドライバを含む)

ただし、config.xmlファイルを使用して、標準的な方法でデータソースを構成できます。このリリースは、Java Embedded Suite (JES)に含まれるドライバを介して、Java DBへのアクセスをサポートしています。

Oracle CQLのカートリッジ(Javaを除く)

Oracle CQLの拡張機能のサポートを提供するOracle CQLのカートリッジのうち、Javaカートリッジのみがサポートされています。特に、空間およびJDBCのカートリッジはサポートされていません

オブジェクト・リレーショナル・マッピング用のJava Persistence API (JPA)


Java Architecture for XML Binding


SOAP Webサービス


一部のセキュリティ・ユーティリティ

これには、passgen、secgen、およびGrabCertが含まれます。

監視


イベントの検査およびトレース

このリリースには、EPNステージから流れてくるイベントを表示したりEPNステージにイベントを注入する機能は含まれていません。


1.2 Oracle Event Processing for Oracle Java Embeddedアプリケーションおよび開発フレームワーク

Oracle Event Processing for Oracle Java Embeddedは、Java Embedded Suite (JES)に含まれているテクノロジをサポートするように設計されています。これには、データベース・アクセス用のJava DB、RESTful Webサービスのサポート用のJerseyおよびJES JREが含まれます。

JES監視ツール、jconsoleをリモートで使用できることに注意してください。ローカル接続はサポートされていません。

JESのドキュメントについては、OracleのWebサイト(http://www.oracle.com/technetwork/java/embedded/resources/java-embedded-suite/index.html)を参照してください。

Oracle Event Processing for Oracle Java Embeddedをサポートするフレームワークの一部であるテクノロジについて、次に説明します。

データベース・アクセス

Oracle Event Processing for Oracle Java Embeddedは、JESに含まれているJava DBデータベース・エンジン(Derbyプロジェクトに基づく)をサポートしています。クライアント・モードまたは埋込みサーバー・モードのいずれかでJava DBを使用できます。Java DBデータベースへのアクセスを有効にするには、ドライバを適切な場所にコピーして、サーバー構成ファイルでデータソースを構成します。

Oracle Event Processing for Oracle Java Embedded自体には、デフォルトではJDBCドライバが含まれていないことに注意してください。

表1-3は、Derbyのドライバとそれらの取得方法を示しています。

表1-3 Java DBへのアクセスをサポートするDerbyドライバの場所

ドライバ 場所

Embedded Java DBドライバ

埋込みドライバderby.jarは、次のJESインストール・ディレクトリあるJESに含まれています。

JES_INSTALL_DIR/javadb/lib

Java DBクライアント・ドライバ(リモートJava DBへのクライアント・アクセスに使用されます)

クライアント・ドライバderbyclient.jarは、JESに含まれていません。次のURLで適切なバージョンをダウンロードしてください。

http://db.apache.org/derby/releases/release-10.8.2.2.html


ドライバJARファイルを作成したら、Oracle Event Processing for Oracle Java Embeddedサーバー・ファイル・システムの次の場所にコピーします。

DOMAIN_HOME\SERVER_HOME\modules\ext

ドライバJARが適切な場所にある場合、サーバーconfig.xmlファイルに追加するdata-source要素を介してデータソースを構成できます。

データソースの構成の詳細は、『Oracle Fusion Middleware Oracle Event Processing for Eclipse開発者ガイド』のスキーマ・リファレンス: サーバー構成wlevs_server_config.xsdに関する項にあるdata-source要素についての情報を参照してください。

Webサーバー

Oracle Event Processing for Oracle Java EmbeddedはJetty Webサーバーを含み、Java Servlet APIをサポートしています。標準的なorg.osgi.service.http.HttpServiceインタフェースもサポートされており、サーブレットを動的に登録することができます。

Jettyの詳細は、『Oracle Fusion Middleware Oracle Event Processing管理者ガイド』のOracle Event ProcessingのJettyの構成に関する項を参照してください。

キャッシュ・サポート

Oracle Event Processingと同様に、Oracle Event Processing for Oracle Java Embeddedには簡易的なキャッシュ・サポートが含まれています。このローカル・キャッシュを使用して、キャッシュされたデータにアクセスするアプリケーションを作成し、迅速な処理を実現することができます。Oracle Coherenceは、Oracle Event Processing上にあるため、サポートされていません。

ローカル・キャッシュの詳細は、『Oracle Fusion Middleware Oracle Event Processing for Eclipse開発者ガイド』のOracle Event Processingのローカル・キャッシュ・システムおよびキャッシュの構成に関する項を参照してください。

REST Webサービスのサポート

Oracle Event Processing for Oracle Java Embeddedアプリケーションの様々な側面を公開するWebサービスを実装できます。Oracle Event Processing for Oracle Java Embeddedは、Java Embedded Suiteに含まれるJerseyライブラリを使用して、JAX-RS規格に基づくRESTful Webサービスの実装をサポートしています。Jerseyは、Java API for RESTful Web Services (JAX-RS)規格の参照実装です。

Oracle Event Processing for Oracle Java EmbeddedアプリケーションにおけるRESTサポートの有効化の詳細は、第1.4.2項「REST Webサービスのサポートの有効化」を参照してください。

Jerseyの詳細は、『Jersey User Guide』(http://jersey.java.net/nonav/documentation/latest/user-guide.html)を参照してください。

1.3 ドメインの作成およびサーバーの構成

構成ウィザードを使用して、Oracle Event Processing for Oracle Java Embeddedアプリケーションをデプロイする新しいドメインを作成できます。Oracle Event Processing for Oracle Java Embeddedは、サイレント・モード(ドメインを作成および構成するための非対話的な方法)での構成ウィザードをサポートしています。

構成ウィザードでは、ドメインに単一のデフォルト・サーバーを作成します。サーバー関連のファイルはすべて、サーバーと同じ名前のドメイン・ディレクトリのサブディレクトリにあります。


注意:

作成する公開鍵証明書には、そのcn名として完全ホスト名が含まれている必要があります。この場合、証明書の別名は「evsidentity」にしてください。


サイレント・モードを使用して構成ウィザードを実行する手順は次のとおりです。

  1. ドメイン構成の設定を定義するsilent.xmlファイルを作成します。

    silent.xmlファイル内の間違ったエントリが原因で失敗が発生する可能性があることに注意してください。失敗の原因を特定する情報を得るために、構成ウィザードを起動するときにログ・ファイルを作成します。

  2. コマンド・ウィンドウを開き、ORACLE_OEP_HOME/ocep_11.1/common/binディレクトリに移動します。ここで、ORACLE_OEP_HOMEは、インストール・ディレクトリを表します。たとえば、これが/oracle_oepの場合、次のコマンドを実行します。

    cd /oracle_oep/ocep_11.1/common/bin
    
  3. サイレント・モードでconfig.shシェル・コマンドを起動します。

    sh config.sh -mode=silent -silent_xml=path_to_xml_file
    

    ここで、path_to_xml_fileは、前述の手順で作成したsilent.xmlテンプレート・ファイルの完全パス名です。

  4. 実行ログを作成する場合、-log=full_path_to_log_fileオプションを使用します。たとえば、次のようになります。

    sh config.sh -mode=silent -silent_xml=path_to_xml_file -log=/home/logs/create_domain.log
    

正常に完了すると、例1-1に示すようなメッセージが返されます。

例1-1 構成ウィザードの正常な完了の出力

/home/testuser/java/jes7.0/jre/bin is added to path
<Tue Feb 26 01:41:23 PST 2013> <Info> <BootBundle> <BEA-1004030> <An encryption key file at location /home/testuser/test_domain/test_server/.aesinternal.dat has been generated>
testuser@emb-sca-ti-xm-2:~/Oracle/Middleware0220/ocep_11.1/common/bin$

構成ウィザードが正常に完了しなかった場合は、ログ・ファイルで詳細を確認します。また、シェル・コマンドの終了コードが、サイレント実行の結果の詳細を確認するのに役立つ場合があります。詳細は、「構成ウィザードのサイレント・モードの終了コード」を参照してください。

サイレント・モードで構成ウィザードを実行する場合、プログラムがXMLファイル(silent.xml)を使用して、使用する構成オプションを決定します。ORACLE_OEP_HOME/common/lib/silent.xmlにあるインストールには、サンプルのsilent.xmlファイルが含まれています。これは、独自に作成する際の出発点として役立つことがあります。

silent.xmlファイルを作成する手順は次のとおりです。

  1. お気に入りのXMLエディタを使用して、サイレント・モードで構成ウィザードを実行するコンピュータ上に、silent.xmlという空のファイルを作成します。

    例1-2は、silent.xmlファイルを示しています。

    例1-2 silent.xmlファイルの例

    <?xml version="1.0" encoding="UTF-8"?>
    <bea-installer xmlns="http://www.bea.com/plateng/wlevs/config/silent">
        <input-fields>
    
            <data-value name="CONFIGURATION_OPTION" value="createDomain" />
            <data-value name="USERNAME" value="wlevs" />
            <data-value name="PASSWORD" value="wlevs" />
    
            <data-value name="SERVER_NAME" value="my_server" />
            <data-value name="DOMAIN_NAME" value="mydomain" />
            <data-value name="DOMAIN_LOCATION" value="/home/mydomains" />
    
            <data-value name="NETIO_PORT" value="9002" />
            <data-value name="KEYSTORE_PASSWORD" value="welcome1" /> 
    
            <data-value name="DB_URL" value="jdbc:oracle:thin:@hostname.com:1521:xe" />
            <data-value name="DB_USERNAME" value="wlevs" />
            <data-value name="DB_PASSWORD" value="wlevs" />
        </input-fields>
    </bea-installer>
    
  2. サンプルXMLファイルの内容を独自のsilent.xmlファイルをコピーします。

  3. 作成したsilent.xmlファイルで、表1-4に示されているキーワードの値を編集して、構成を反映します。

    たとえば、/home/oracle_oep/user_projects/domainsディレクトリに新しいドメインを作成する場合、対応する<data-value>要素を次のように更新します。

    <data-value name="DOMAIN_LOCATION"
        value="home/oracle_oep/user_projects/domains" />
    
  4. 任意のディレクトリにファイルを保存します。

表1-4 silent.xmlファイルのデータ値名

このデータ値名に対して... 次の値を入力...

CONFIGURATION_OPTION

デフォルト・サーバーを使用して新しいドメインを作成するか、既存のドメインでサーバーを更新するかを指定します。

有効な値は、createDomainまたはupdateDomainです。デフォルト値は、createDomainです。

USERNAME

ドメイン内で作成または更新されたサーバーの管理者のユーザー名。

PASSWORD

ドメイン内で作成または更新されたサーバーの管理者のパスワード。

SERVER_NAME

このドメイン内の新しいサーバーの名前。この名前は、サーバー・ファイルを含むディレクトリの名前としても使用されます。

DOMAIN_NAME

ドメインの名前。

DOMAIN_LOCATION

ドメインを含むディレクトリの完全な名前。

ドメインの標準的な場所は、ORACLE_OEP_HOME/user_projects/domainsです。ここで、ORACLE_OEP_HOMEは、最上位のインストール・ディレクトリを表します。

NETIO_PORT

サーバー・インスタンス自体がリスニングするポート番号。

KEYSTORE_PASSWORD

アイデンティティ・キーストアのパスワード。

PRIVATEKEY_PASSWORD

証明書秘密鍵のパスワード。

このオプションのデフォルト値は、KEYSTORE_PASSWORDの値です。

DB_URL

JDBCを使用したデータベースへの接続に使用されるURL。このオプションは、データソースの構成に使用されます。

データベースの構成パラメータはオプションです。このパラメータを指定しない場合、サーバーのデータソースは構成されません。

この構成ウィザードは、Oracleデータベースのみを使用したデータソースの構成をサポートしていることに注意してください。別のデータベース・テクノロジを使用する場合は、構成を手動で編集してください。

DB_USERNAME

データソースを介してデータベースに接続するユーザーの名前。

データベースの構成パラメータはオプションです。このパラメータを指定しない場合、サーバーのデータソースは構成されません。

DB_PASSWORD

データソースを介してデータベースに接続するユーザーのパスワード。

データベースの構成パラメータはオプションです。このパラメータを指定しない場合、サーバーのデータソースは構成されません。


構成ウィザードのサイレント・モードの終了コード

構成ウィザードをサイレント・モードで実行した場合、ドメインの作成および構成の成功または失敗を示す終了コードが生成されます。これらの終了コードを、表1-5に示します。

表1-5 構成ウィザードのサイレント・モードの終了コード

コード 説明

0

構成ウィザードの実行は、正常に完了しました。

-1

構成ウィザードの実行は、致命的なエラーのために失敗しました。

-2

構成ウィザードの実行は、内部的なXML解析エラーのために失敗しました。


1.4 Oracle Event Processing for Oracle Java Embeddedアプリケーションの開発

Oracle Event Processing for Oracle Java Embeddedアプリケーションは、Oracle Event Processing IDE for Eclipseを使用して開発できます。IDEには、イベント処理ネットワーク(EPNs)を設計するためのビジュアル・エディタや、アプリケーションの開発を容易にするその他のツールが含まれています。

ただし、現在IDEには、ビルドしたアプリケーションが埋込み環境でデプロイおよび実行できることを保証するサポートは含まれていないことに留意してください。たとえば、IDEは、設計するアプリケーションにサポート対象外の機能が含まれていないことを検証しません。

つまり、埋込みアプリケーションの開発時には、使用する機能のセットを、Oracle Event Processing for Oracle Java Embeddedでサポートされている機能に制限するように注意する必要があります。これは、IDE自体がアクセスできる機能のサブセットです。

Oracle Event Processing for Oracle Java Embeddedのサポート対象外の機能を使用してアプリケーションを作成した場合(IDEを使用するかどうかに関係なく)、デプロイ時のエラーや実行時の失敗が発生する可能性があります。

Oracle Event Processing for Oracle Java Embeddedに含まれているOracle Event Processingの機能、およびOracle Event Processing for Oracle Java Embeddedから除外されているOracle Event Processingの機能のリストについては、第1.1.2項「Oracle Event Processing for Oracle Java Embeddedに含まれている機能」を参照してください。

IDEを使用したイベント処理アプリケーションの開発の詳細は、『Oracle Fusion Middleware Oracle Event Processing for Eclipse開発者ガイド』のOracle Event Processingアプリケーションの作成の概要に関する項を参照してください。


注意:

サーバーの起動時に、コンソール出力に「永続ファイル・ストアのネイティブwlfileioライブラリをロードできません。」などのエラー・メッセージが表示される可能性があります。このメッセージは無視してかまいません。


1.4.1 Oracle Event Processing for Oracle Java Embeddedのサンプル

Oracle Event Processing for Oracle Java Embeddedには、Smart Applianceサンプル・アプリケーションが含まれます。アプリケーションは、ソケット接続を介してデバイスのイベントをリスニングします。デバイス・イベントは、デバイス情報およびそれに関連付けられている値を表します。各デバイスのしきい値は、JavaDBデータベースに保存されます。アプリケーション・プロセスがデバイス・イベントを処理する際、イベントの値が指定されたしきい値の制限内に収まらない場合、アプリケーションはアラートを生成します。

実行方法を含むサンプルの詳細は、サンプルに含まれているreadme.txtファイルを参照してください。

Oracle Event Processing for Oracle Java Embeddedのインストールの後に、Smart Applianceアプリケーションは、次のファイル・システムの場所に配置されます。

ORACLE_OEP_HOME/ocep_11.1/examples/source/smartappliance

1.4.2 REST Webサービスのサポートの有効化

Jersey (Java Embedded Suiteに含まれているJAX-RSの実装)を使用して、アプリケーションからRESTful Webサービスを公開できます。RESTサポートを有効化したら、Javaコードのメソッドに注釈を付け、RESTクライアンのコールが行われたときに実行されるようにすることができます。JerseyおよびJAX-RSの詳細は、『Jersey User Guide』(http://jersey.java.net/nonav/documentation/latest/user-guide.html)を参照してください。

Smart Applianceサンプル・アプリケーションは、REST対応アプリケーションの例です。詳細は、第1.4.1項「Oracle Event Processing for Oracle Java Embeddedのサンプル」を参照してください。

REST Webサービスのサポートの有効化

RESTサポートを有効化するには、Jerseyライブラリがアプリケーションのクラスパス上にあることを確認して、RESTリソースとしてメソッドを実装するクラスでそれらを使用できるようにする必要があります。OSGiサービスを使用してRESTfulクラスを構成し、外部クライアントで使用できるようにすることも必要です。

REST Webサービスのサポートを有効化するには、次の手順を実行します。

  1. Jerseyライブラリがアプリケーションのクラスパスにあることを確認します。

    たとえば、Oracle Event Processing for Oracle Java Embeddedサーバー・ドメインのmodules/extディレクトリにJARファイルを配置する場合があります。ライブラリがある場合は、Jerseyパッケージを必要に応じて独自のコードにインポートして、Jersey APIをそのドキュメントの説明に従って使用できるようになります。

  2. 例1-3に示すように、アプリケーションのアセンブリXMLファイルに、OSGi HTTPサービスの参照を含めて、RESTfulクラスを表すBeanに関連付けます。

    例1-3 アセンブリXMLファイルのOSGi HTTPサービスの参照

    <osgi:reference id="httpServiceRef" interface="org.osgi.service.http.HttpService" />
    <!-- Bean declaration with properties for the RESTful service root context
         and OSGi HTTP service.  -->
    <bean id="bean" class="com.oracle.cep.example.smartappliance.sink.AlertsService">
        <property name="rootContext" value="/alerts" />
        <property name="httpService" ref="httpServiceRef" />
    </bean>
    
  3. 例1-4に示すように、Beanクラス・コードで、HTTPサービスのsetterメソッド(setHttpService(HttpService httpService)など)を指定します。

  4. 例1-4に示すように、Beanクラス・コードで、OSGi HTTPサービスにREST Servletを登録します。

    1. 適切な初期化パラメータを使用して、Jersey ServletContainerインスタンスを作成します。

    2. 初期化パラメータで、javax.ws.rs.Applicationプロパティを実装されたJAX-RS Applicationクラス名として設定します。Applicationクラスは、リソース・クラスをロードするクラスです。

    例1-4 クラス・コードでのOSGi HTTPサービスの登録

    public void setHttpService(HttpService httpService) throws Exception
    {
        Hashtable<String, String> initParams = new Hashtable<String, String>();
        initParams.put("javax.ws.rs.Application", WebApplication.class.getName());
        Servlet jerseyServlet = new ServletContainer();
        httpService.registerServlet(rootContext, jerseyServlet, initParams, null);
    }
    

1.5 Oracle Event Processing for Oracle Java Embeddedアプリケーションのデプロイ

インストールに含まれているDeployerコマンドライン・ツールを使用して、Oracle Event Processing for Oracle Java Embeddedアプリケーションをデプロイします。SSL接続または非SSL接続を介してデプロイできます。

Oracle Event Processing for Oracle Java Embeddedに含まれているDeployerツールは、Oracle Event Processingに用意されているものとほぼ同じです。ただし、クラスタおよびグループのデプロイメントは、Oracle Event Processing for Oracle Java Embeddedではサポートされていません。

Deployerの詳細は、『Oracle Fusion Middleware Oracle Event Processing管理者ガイド』のDeployerのコマンドライン・リファレンスに関する項を参照してください。


注意:

Oracle Event Processing for Oracle Java EmbeddedにはOracle Event Processing Visualizerが含まれていないため、グラフィカル・ユーザー・インタフェースを通したデプロイメントはサポートされていません。


実行中のOracle Event Processing for Oracle Java Embeddedサーバーにアプリケーションをデプロイするには、次のようなコマンドを使用します。

java -jar wlevsdeploy.jar -url http://hostname:9002/wlevsdeployer -user wlevs -password wlevs1 -install myoepapp.jar

次の例は、追加のデプロイメント・シナリオを示しています。

ローカル・サーバーへのデプロイ

java -jar wlevsdeploy.jar -user wlevs -password wlevs -url http://localhost:9002/wlevsdeployer -install application

非SSL接続を介したデプロイ

java -jar wlevsdeploy.jar -user wlevs -password wlevs -url http://<host>:9002/wlevsdeployer -install application

SSLを介したデプロイ

java -Djavax.net.ssl.trustStore=d:\downloads\evsidentity.jks -Djavax.net.ssl.trsutStorePassword=welcome1 -jar wlevsdeploy.jar -user wlevs -password wlevs -url https://<host>:9003/wlevsdeployer -install application

1.6 Oracle Event Processing for Oracle Java Embeddedアプリケーションの管理

Oracle Event Processing for Oracle Java Embeddedアプリケーションは、wlevs.Adminコマンドライン・ツールおよびJava Management Extensions (JMX)を使用して管理できます。

JMXまたはwlevs.Adminのいずれを使用する場合でも、Oracle Event Processing for Oracle Java Embeddedは、このリリースから省略されている機能を除くすべての機能に対する管理をサポートします。省略されている機能のリストについては、第1.1.2項「Oracle Event Processing for Oracle Java Embeddedに含まれている機能」を参照してください。


注意:

Oracle Event Processing for Oracle Java EmbeddedにはOracle Event Processing Visualizerが含まれていないため、グラフィカル・ユーザー・インタフェースを通した管理はサポートされていません。


JMXを使用した管理

Oracle Event Processing for Oracle Java Embeddedは、Oracle Event Processingの場合と同様に、MSA RMIを介したリモートJMX接続をサポートします。特に省略されている機能に関連する機能を除き、ほとんどの構成MBeanおよびランタイムMBeanがサポートされています。たとえば、HttpPubSubAdapterMBean、JMSAdapterMBeanおよび監視関連のMBeanはサポートされていません。これは、基礎となる機能がサポートされていないからです。

JES JREにはJMXローカル・アタッチAPIのサポートが含まれていないため、「ローカル」(非RMI) JMX接続はサポートされていません。

JMXの使用方法の詳細は、『Oracle Fusion Middleware Oracle Event Processing管理者ガイド』のOracle Event ProcessingのJMXの構成に関する項を参照してください。

wlevs.Adminを使用した管理

Adminコマンドライン・ユーティリティがサポートされており、これにはOracle Event Processingに存在する機能のほとんどが含まれています。特に欠落している機能(監視または記録再生に関連するコマンドを含む)に関連するオプションは、サポート対象外になっています。

たとえば、次の例に示すように、AdminユーティリティのADDRULEコマンドを使用して、ローカルでOracle CQLルールを追加できます。

prompt> java wlevs.Admin 
        -url service:jmx:msarmi://localhost:9002/jndi/jmxconnector 
        -username wlevs -password wlevs 
        ADDRULE -application helloworld -processor helloworldProcessor 
        -query myquery "SELECT * FROM Withdrawal [Rows 5]"

Adminツールの使用方法の詳細は、『Oracle Fusion Middleware Oracle Event Processing管理者ガイド』のwlevs.Adminのコマンドライン・リファレンスに関する項を参照してください。


注意:

このリリースでは、-disablesecurityフラグを使用したサーバーの起動はサポートされていません。


1.6.1 policygenコマンドライン・ユーティリティ

policygenコマンドライン・ユーティリティを使用して、eXtensible Access Control Markup Language (XACML)ファイルを生成できます。

policygenユーティリティは、ORACLE_OEP_HOME/ocep_11.1/bin/policygen.shにあります。ここで、ORACLE_OEP_HOMEはOracle Event Processing for Oracle Java Embeddedインストール・ディレクトリを表しています。

1.6.1.1 policygen構文

policygen.sh [-h] [-s] [-l|-x] entitlement_file xacml_output_file

説明:

表1-6 policygenの引数

オプション 説明 デフォルト値

-s

出力ファイルに標準のXACMLポリシーが生成されるように指定します。指定しない場合、資格XACMLポリシーが生成されます。


-l

XACML LDIFTファイルが生成されるように指定します。


-x

XACMLポリシー・ファイルが生成されるように指定します。


-h

使用方法のヘルプを表示します。


entitlement_file

入力資格XMLファイルの場所を指定します。


xacml_output_file

出力XACMLファイルの場所を指定します。



1.6.1.2 policygenの使用例

たとえば、次のようになります。

prompt> policygen.sh ~/security/policygen/AuthorizerInit.xml XACMLAuthorizerInit.ldift

1.7 サポートされているプラットフォームとリソースの構成

Oracle Event Processing for Oracle Java Embeddedは、次のプラットフォームの構成をサポートしています。

Oracle Event Processingと比較して、Oracle Event Processing for Oracle Java Embeddedは、ディスクおよびヒープ・フットプリント要件がかなり小さくなっています。

新規インストールの場合、Oracle Event Processing for Oracle Java Embeddedは、60 MBのディスク領域が必要です。サーバーが起動され、アプリケーションがデプロイされた場合、アプリケーションごとに追加のディスク領域が必要になります。