43
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1 Java EE アプリケーションを WebLogic Serverで動かしてみよう 日本オラクル株式会社 オラクルユニバーシティ 岡田 大輔 20130821

Java EE アプリケーションをWebLogic Serverで動かしてみよう

Embed Size (px)

DESCRIPTION

Java EEアプリケーションの基本的な仕組みを説明し、アプリケーションを動かすために必要なWebLogic Serverの設定、デプロイメント方法をステップ・バイ・ステップで確認します。また、アプリケーション動作中のWebLogic Serverの監視方法も紹介します。 日本オラクル株式会社 オラクルユニバシティ 岡田 大輔

Citation preview

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1

Java EE アプリケーションをWebLogic Serverで動かしてみよう

日本オラクル株式会社 オラクルユニバーシティ 岡田 大輔 2013年08月21日

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 2

以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。

OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 3

Agenda

Java EEアプリケーションを理解しよう

アプリケーションを動かす環境の構築と設定

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 4

Java EEアプリケーションを理解しよう

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 5

アプリケーションサーバとは? ビジネスロジックを実行するためのミドルウェア

アプリケーションサーバ

WebLogic Server

RDBMS アプリケーション (ビジネスロジック)

クライアント

(業務データ) データ

入力/操作

アプリケーションサーバの主な機能

•ビジネスロジックの実行

•リソースアクセスやトランザクション管理など

Oracle WebLogic Serverはこの機能をJava EE 仕様にもとづいて提供する

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 6

おさらい: Java EE アーキテクチャの変遷 ① ~ J2EE 1.4

Java EE アプリケーション・サーバー(Webコンテナ/EJBコンテナ)

アプリケーション

業務アプリケーション

Servlet 2.4 / JSP 2.0 EJB 2.1

MVC Framework

Struts, Spring MVC …

DI x AOP Framework

Spring, Seaser2 …

ORM Framework

Hibernate, iBATIS …

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 7

おさらい: Java EE アーキテクチャの変遷 ② Java EE 5

Java EE アプリケーション・サーバー(Webコンテナ/EJBコンテナ)

アプリケーション

業務アプリケーション

Servelt2.5 / JSP 2.1 JSF 1.2

Framework Integration

Oralce ADF, JBoss Seam …

EJB 3.0 JPA 1.0

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 8

おさらい: Java EE アーキテクチャの変遷③ Java EE 6

Java EE アプリケーション・サーバー(Webコンテナ/EJBコンテナ)

アプリケーション

業務アプリケーション

JSF 2.1

Contexts and Dependency Injection(CDI)

EJB 3.1 JPA 2.0

Java EE 6 は単体で開発フレームワークとして使用できるレベルまで成熟

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 9

サンプルアプリケーション DBへのCRUD操作

WebLogic Server

ID Name Phone Date

Facelets

Customer

Controller

@Named

@Stateless

Customer

@Entity

Customer

Facade

JSF

EJB

JPA

ejb.findAll()

ejb.create()

ejb.edit()

ejb.remove()

ejb.count()

query.select()

em.find()

em.persist()

em.merge()

em.remove()

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 10

WebLogic Server

アプリケーションからのデータベース接続 データソース(接続プール)を利用

データソース

接続プール

JNDI デプロイ時にバインド

デプロイ時に

初期容量まで接続

JPA アプリケーション

接続オブジェクト

取得

JNDIルックアップ

Entity オブジェクト

persistence.xml

<jta-data-source />

EntityManager

PersistenceContext

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 11

使用する開発環境(IDE) Java EE 6&WebLogic Server 12c対応で使いやすいものを選択

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 12

サンプルの作成 (1) アプリケーションのデプロイ対象サーバーの登録

TIPS: [サーバーの追加]から、サーバーの種類($WL_HOMEを指定)とドメインを指定。 ドメインは事前に作成

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 13

参考: Eclipse(OEPE)の場合 アプリケーションのデプロイ対象サーバーの登録

TIPS: ランタイムが登録されていない場合は$WL_HOME ($ORACLE_HOME/wlserver)を指定する

TIPS: 既存のドメインを指定 または 新規作成 を選択

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 14

サンプルの作成 (2) プロジェクトの作成

TIPS: CDIを使用する場合は、[コンテキストと依存性の注入を有効にする]を選択

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 15

サンプルの作成 (3) データベース表からのエンティティ・クラス

TIPS: デプロイ対象のサーバーを起動していれば利用可能なデータソースを選択可能 (JPAの設定にデータソースが自動指定される)

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 16

サンプルの作成 (4) エンティティからのJSFページ・クラス

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 17

アプリケーションを動かす 環境の構築と設定

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 18

WebLogic Server のインストール WebLogic Server 12.1.2からインストーラがOUIに

TIPS: インストーラの起動

$ java –d64 –jar wls_121200.jar

TIPS: インベントリ・ディレクトリが存在しない場合はインベントリ・ディレクトリを指定

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 19

WebLogic Serverのインストール Oracle ホームとインストール・タイプの指定

TIPS: WLS12.1.2からは Middlewareホーム($MW_HOME)

ではなくOracleホーム ($ORACLE_HOME)

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 20

WebLogic Serverのインストール WebLogic サンプルの構成

TIPS: [WebLogic サンプルの構成]を選択するとクイック・スタート構成ウィザードが起動する

後で実行する場合:

$ORACLE_HOME/wlserver/common/bin/qs_config.sh (cmd)

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 21

ドメインとは?

WebLogic Serverの管理の単位

– WebLogic で管理される設定はドメイン単位で管理される

= 設定ファイルが作られる単位

ドメインの作成はFusion Middleware構成ウィザードを使用

– ウィザードによってドメインに必要なファイルが生成される

設定ファイル, 起動スクリプト, セキュリティファイル etc

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 22

ドメインの作成 Fusion Middleware構成ウィザード

TIPS: ドメインの出力先はウィザードで指定可能

ドメインの場所: (デフォルト)

$ORACLE_HOME/user_projects/domains/<domain_name>

TIPS: 構成ウィザードの起動 $ORACLE_HOME/wlserver/common/config.sh (cmd)

コマンドラインの場合はWLSTを使用

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 23

Fusion Middleware構成ウィザード テンプレートとドメイン・モード

TIPS: 原則として、開発時のドメイン・モードは開発環境を選択。本番環境では、本番を必ず選択。

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 24

ドメインディレクトリ構成

ディレクトリ 説明

1 domain ドメインディレクトリ (ディレクトリ名=ドメイン名)

0 autodeploy 自動デプロイメントディレクトリ(開発モード用)

0 bin 起動・停止スクリプト etc

管理サーバ: startWebLogic.sh / stopWebLogic.sh

管理対象サーバ: startManagedWebLogic.sh / stopManagedWebLogic.sh

0 config コンフィグレーションディレクトリ

config.xmlが配置される

0 init-info ドメインの初期化情報

0 nodemanager ノードマネージャ・ホームディレクトリ (WLS12.1.2 ~)

0 pending ペンディングコンフィグレーションストア

(編集中のコンフィグレーションの保存先)

0 security セキュリティファイル (ldift, SerializedSystemIni.dat)

1 servers サーバローカルディレクトリ

servers配下にサーバごとにディレクトリが作成される 0 server_name

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 25

サーバの起動

コンフィグレーションウィザードを実行するとサーバ起動スクリプトが生成される ($DOMAIN/bin ディレクトリ)

– startWebLogic.sh(cmd) … 管理サーバ起動スクリプト

– startManagedWebLogic.sh(cmd) … 管理対象サーバ起動スクリプト

IDEの場合

– NetBeans - [アプリケーションの実行 ]

– Eclipse - [サーバーを始動 ]

TIPS: 標準ではIDE内のコンソールウィンドウで起動する (Eclipseは設定変更可能)

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 26

ドメインの設定を行うには? 管理コンソール

管理コンソールは管理サーバにだけデプロイされる管理用Webアプリケーション

http://<hostname>:<port>/console * 自動的にデプロイされるので明示的なデプロイは不要

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 27

データソースの作成

WebLogic JNDIの区切り文字は 「.」もしくは「/」

JNDI名は複数バインド可能。複数バインドする場合は1行ずつ記述

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 28

データソースのモニタ データソースの[監視]タブのテーブルに行が表示されていればデータソースはデプロイ済み

– 表のカスタマイズを選択して必要な情報を追加する

「現在○○数」はモニタ時点のスナップショット

「最大○○数」は最大負荷情報を取得可能

– サーバにデプロイされたコンポーネントからアクセスできるかどうかは各サーバのJNDIツリーを確認

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 29

デプロイメントとは?

アプリケーションをWebLogic ドメインに登録し対象指定されたサーバでアクティブにすること

デプロイメントフェーズは2段階ある

– インストール (準備完了状態)

アプリケーションをドメインに登録

アプリケーションのデプロイ対象指定(サーバ、クラスタ)

– アクティベーション (アクティブ状態)

デプロイ対象でアプリケーションを起動

– = クライアントからのアクセス可能な状態

開発環境では2フェーズデプロイメントは意識しなくても良い

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 30

IDEからのデプロイメント (開発モード) IDEメニューを選択してデプロイ

• [デプロイ]を選択するとアプリケーションをデプロイ

• [実行]を選択するとプロジェクトをデプロイしてブラウザを起動

• [追加および除去]を選択するとデプロイ/アンデプロイするプロジェクトを選択可能

• プロジェクトから[実行]を選択するとプロジェクトをデプロイしてブラウザを起動

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 31

IDEのデプロイメント形式

NetBeans

– 展開ディレクトリ形式デプロイメント

アーカイブ形式はプロジェクトビルド時にdistディレクト配下に出力

展開ディレクトリ形式またはアーカイブ形式

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 32

IDEのデプロイメント設定

Eclipse (OEPE)

– 原則として分割開発ディレクトリ・デプロイメント

サーバーのプロパティ設定でアーカイブ形式も選択可能

OEPEの場合

TIPS: アーカイブ形式はプロジェクトのエクスポートから出力可能

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 33

コンソール・デプロイメント(開発モード) デプロイメントの開始

①ロック取得不要

②[インストール]開始

アプリケーション・インストール・アシスタントが開始される

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 34

コンソール・デプロイメント(開発モード) デプロイメント・ソースの指定

34

デプロイメント・ソースを指定

TIPS: アプリケーション・ソースは管理サーバからアクセスできる場所に配置しておく

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 35

アプリケーションへのアクセス

Webアプリケーションのデプロイメント記述子(web.xml)

で指定した<welcome-file-list/>のURLがリンクとして表示される

TIPS: 開発モードの場合はCAT(Classloader Analysis Tool)

へのリンクも表示される(WLS12.1.2~)

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 36

アプリケーションのモニタリング (1) デプロイメントのサマリー

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 37

アプリケーションのモニタリング (2) アプリケーション単位のモニタリング

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 38

まとめ

必要なソフトウェアをインストール

– WebLogic Server / IDE のインストール

WebLogic Serverドメイン(開発用ドメイン)を作成

– 必要に応じてデータソースなどのリソースを設定

アプリケーションを開発

– 開発用のドメイン設定をもとにデータソースのJNDI名を指定

– 開発環境ではIDEからデプロイ可能

Java EE アプリケーションをWebLogic Serverで動かすには…

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 39

オラクルユニバーシティからのお知らせ

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 40

オラクルユニバーシティからのお知らせ

WebLogic Serverの管理方法を体系的に学習したい方に最適な研修コースをご提供しています。

– Classroomトレーニングだけでなく、Live Virtual Classや『Oracle トレーニング・オンデマンド』など多様な受講形態から選択いただけます。

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 41

コース内容

■Oracle Fusion Middleware の概要

■Oracle WebLogic Serverのインストール

■WebLogic Server ドメインのコンフィグレーション

■アプリケーションのデプロイ

■JMS アプリケーションのコンフィグレーション

■Oracle HTTP Server のコンフィグレーション

■バックアップおよびリカバリの管理

■WebLogic Serverのアーキテクチャ

■管理コンソールおよび他の管理ツールの概要

■Oracle WebLogic Server の管理およびロギングの使用

■データソース、JDBCドライバ、接続プールの設定

■WebLogic Serverの基本セキュリティのコンフィグレーション

■Oracle WebLogic クラスタのコンフィグレーション

■全体バックアップ、増分バックアップ

受講

前提条件

・Linux の基本コマンドおよびデスクトップのナビゲーション

・クライアント/サーバーの概念における TCP/IP ネットワークに関する基本的な知識

・Java EE の基礎知識(サーブレットや JSP など) ※推奨

対象者 ・Oracle WebLogic Server 11g/12c管理者 ・Javaアプリケーション開発者

コース日程 5日間

日程の詳細は Oracle University Webサイト にてご確認ください。

受講料 定価¥363,825(税込) ※Oracle PartnerNetwork会員様は、パートナー割引価格で受講いただけます。

Oracle Application Gridの基盤を支える Oracle WebLogic Server 11gの管理コース!

このコースでは、Web管理者がOracle WebLogic Server 11gのインストールおよび設定する方法に

ついて説明します。Web管理者が管理コンソールやコマンドライン、およびスクリプトツール(

WLST)などを使用して、Java EEアプリケーションをOracle WebLogic Server 11gにデプロイする方

法についても説明します。

その他に、Oracle WebLogic Server のWebインタフェースとしてOracle HTTP Serverを設定する方

法を解説し、またOracle WebLogic Serverクラスタを設定してアプリケーションのフェイルオーバ

ーとロードバランシングをサポートする方法を学習します。また、WebLogic Server管理者の管理

タスクの概要について説明します。

Oracle WebLogic Server 11g: 管理

ミドルウェア

次回開催日程: 2013年8月26日(月) ~ 30日(金)

※ WLS12cとの差分は参考資料を配布します

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 42

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 43