プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebLogic Server WebLogic SCAアプリケーションの開発
12c (12.2.1.1.0)
E79371-01
目次へ移動
目次

前
次

9 WebLogic Spring SCAアプリケーションのデプロイ

次の各項では、Oracle WebLogic ServerにWebLogic Spring SCAアプリケーションをデプロイする方法について説明します。

注意:

SCAコンポジットのコンポーネントとしてのWebLogic Spring SCAアプリケーションの使用のサポートは、Oracle SOAスイートの現在のリリースでテクニカル・プレビューとして提供されています。ただし、この機能に関するドキュメントは、Oracle SOAスイートではまだ提供されていません。

デプロイメント・ユニットの準備

WebLogic SCAランタイムはエンタープライズ・アーカイブ(EAR)およびWeb アーカイブ(WAR)形式をデプロイメント・ユニットとしてサポートします。

通常のWebLogic SCAアプリケーションは、META-INF/jsca/ディレクトリのSpringアプリケーション・コンテキスト・ファイルを、アプリケーションのPOJOクラスとバンドルします。

WebLogic Spring SCAアプリケーションのEARアーカイブの構成を次の例に示します。

META-INF/application.xml
META-INF/weblogic-application.xml
META-INF/jsca/spring-context.xml
MyEJBApp.jar
MyWebApp.war
APP-INF/lib/MyScaClasses.jar
            META-INF/jsca/spring-context.xml
APP-INF/classes/MyScaPojo.class

WebLogic Spring SCAアプリケーションのWARアーカイブの構成を次の例に示します。

WEB-INF/web.xml
WEB-INF/weblogic.xml
WEB-INF/lib/MyScaClasses.jar
            META-INF/jsca/spring-context.xml
            MyScaPojo1.class
            MyScaPojo2.class

デプロイメント記述子の構成

<library-ref>要素をアプリケーションのデプロイメント記述子に追加する必要があります。

共有Webアプリケーション・ライブラリを参照する場合、オプションの<context-root>要素を追加してライブラリ・モジュールのコンテキスト・ルートを宣言することもできます。これにより、コンテキスト・ルートが構成された値に確実に設定され、同じサーバーにデプロイされて同じ共有ライブラリを参照する他のWebLogic SCAアプリケーションと競合しないようにできます。

注意:

各WebLogic Spring SCAアプリケーションに一意の<context-root>を指定することをお薦めします。複数のアプリケーションが1つのサーバーまたはクラスタにデプロイされている場合、各アプリケーションにはweblogic-sca-1.0.warへの独自のライブラリ参照があります。各WebLogic SCAアプリケーションはweblogic-sca-1.0.warで指定したデフォルトのコンテキスト・ルートを使用するため、アプリケーションごとに異なるコンテキスト・ルートを指定しないと、コンテキスト・ルートが競合することになります。

次の例は、EARのweblogic-application.xml記述子内の<library-ref>および<context-root>を示しています。

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
  <library-ref>
  <library-name>weblogic-sca</library-name>
    <context-root>weblogic-sca-ctx-root1</context-root>
  </library-ref>
</weblogic-application>

次の例は、WARのweblogic.xml記述子内の<library-ref>および<context-root>を示しています。

<?xml version="1.0" encoding="UTF-8859-1"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
  <library-ref>
  <library-name>weblogic-sca</library-name>
    <context-root>weblogic-sca-ctx-root1</context-root>
  </library-ref>
</weblogic-application>

バンドリング・ライブラリ

WebLogic Spring SCAアプリケーションはEARの場合APP-INF/libの下(WARの場合はWEB-INF/libの下)のspring.jarをバンドルする必要があります。Springにはcommons-loggingへの依存があります。したがって、jarはアプリケーションともバンドルされる必要があります。

WebLogic SCAはSpring 2.0.6以降をサポートします。Spring 2.5.3をお薦めします。

クラスタでのデプロイ

WebLogic Spring SCAアプリケーションは均一なクラスタ環境にデプロイできます。クラスタ・デプロイメントはアプリケーションを各ノードにデプロイし、ほとんどのリクエスト処理はステートレス(ステートフルな処理は自分の状態を保管するのにデータベースを使用)なので、ロード・バランサまたはプラグインはどのノードにもリクエストをルーティングできます。

他のツールを使用したWebLogic Spring SCAアプリケーションのデプロイ

Oracle Enterprise Pack for Eclipse (OEPE)およびOracle JDeveloperを使用して、WebLogic Spring SCAアプリケーションをスタンドアロンWebLogic Serverにデプロイすることもできます。

これらのツールでのWebLogic SCAサポートの詳細は、ツールのサポートを参照してください。

ランタイム

WebLogic Spring SCAアプリケーションがデプロイされると、そのサービスは適切なバインディング・コンポーネントの実装により公開されます。binding.wsで定義されたサービスの場合、Webサービス・バインディング・コンポーネントの実装によりWebサービスのエンドポイントが公開されます。binding.ejbで定義されたサービスの場合、EJBバインディング・コンポーネントによりEJBがJNDIで使用可能になります。

同じアプリケーション内でのデプロイ中に複数のSpringアプリケーション・コンテキスト・ファイルが使用される場合、WebLogic SCAランタイムは一致するサービスおよび参照をワイヤリングし、内部ワイヤリング用のバインディングを無視します。これにはsca:reference要素でオプションのdefault属性の使用が必要です。

詳細は、sca:reference要素を参照してください。

注意:

2つまたはそれ以上のSpringアプリケーション・コンテキスト・ファイルを含むWebLogic Spring SCAアプリケーションは、Oracle SOA内の他のコンポジットにのみネストできますが、これは包含SCDLファイルが必要なためです。