Oracle9i JDeveloper
リリース
リリース
リリース
リリース 9.0.3
チュートリアル
チュートリアル
チュートリアル
チュートリアル ∼
∼
∼
∼ JavaServer Pages 編
編
編
編
Creation Date: Jan. 27, 03 Last Update: Feb. 13, 03
目次
目次
目次
目次
はじめに はじめに はじめに はじめに... 2 前提条件 ... 2 この資料の表記方法... 2 JDeveloper によるによるによるによる JSP の作成の作成の作成の作成 ... 3 データベース・アクセスの準備... 4 JSP ページの新規作成... 5 JSP ビューア ... 6 カスタム・タグの追加 ... 7 テスト... 10 JDeveloper によるカスタム・タグ・ライブラリの作成によるカスタム・タグ・ライブラリの作成によるカスタム・タグ・ライブラリの作成によるカスタム・タグ・ライブラリの作成 ... 12 TLD の作成... 12 タグ・ハンドラ・クラスの作成... 15 タグ・ハンドラ・クラスのカスタマイズ ... 18 コンポーネント・パレットへの登録 ... 21 作成したカスタム・タグの使用... 25Oracle9i Application Server へのデプロイへのデプロイへのデプロイへのデプロイ ... 26
Oracle9iAS への接続情報の定義 ... 26 WAR デプロイメント・プロファイルの作成 ... 30 デプロイの実行 ... 33 他のアプリケーション・サーバーへのデプロイ ... 34 サンプル・コード サンプル・コード サンプル・コード サンプル・コード ... 36 付録 付録 付録 付録 A: JDeveloper の環の環の環の環境設定境設定境設定... 38 境設定 埋め込み OC4J サーバーの設定 ... 38 Web ブラウザの設定... 38 付録 付録 付録 付録 B: JDeveloper と外部ツールの連携と外部ツールの連携と外部ツールの連携と外部ツールの連携 ... 40 最後に 最後に 最後に 最後に ... 44
はじめに
はじめに
はじめに
はじめに
Oracle9i JDeveloper(以下 JDeveloper)は、Java および XML 開発者のための、インターネ ット・アプリケーションや Web サービスの開発、デバッグからデプロイまでを END-TO-END にサポートする統合開発環境(IDE)です。JDeveloper は、J2EE 1.3 および XML に対応し たウィザードやエディタ、フレームワークなど豊富な機能を提供します。
このチュートリアルでは、JavaServer Pages(JSP)ページおよびカスタム・タグ・ライブ ラリを作成し、Oracle9i Application Server(以下 Oracle9iAS)にデプロイするまでの手順を 紹介します。
前提条件
前提条件
前提条件
前提条件
このチュートリアルは、JDeveloper がすでにインストールされており、ワークス ペースおよびプロジェクトの作成などの基本的な操作方法を知っている開発者を 対象にしています。JDeveloper の基本的な操作に関する説明が必要な方は、現在 OTN-J で公開されている『はじめての Oracle9i JDeveloper R9.0.3』を参照してくだ さい。 なお、このチュートリアルに沿って最後まで作業を進めるためには、Oracle9i Application Server R9.0.3 が必要です。この資料の表記方法
この資料の表記方法
この資料の表記方法
この資料の表記方法
この資料で使用している表記方法は次の通りです。 表記方法 表記方法 表記方法 表記方法 説明説明説明説明 例例例例 太字 太字 太字 太字 ファイル名または URL admin.jar クーリエ・フォント コマンドやソース・コード java -version イタリック 使用する環境に合わせて変更する部分 <ホスト名> <JDEV_HOME> JDeveloper をインストール(展開)した ディレクトリこの資料では、主に Windows の構文を用いていますが、UNIX または Linux 環境 でのファイル名、およびディレクトリ名などは特に明記がない場合は同一です。
JDeveloper による
による
による
による JSP の作成
の作成
の作成
の作成
JavaServer Pages(JSP)は、Servlet に基づいたサーバー・サイド・テクノロジです。Java のコードによって HTML を生成する Servlet と異なり、JSP は HTML または XML ドキュメ ントの中に Java コードをスクリプトレットとして埋め込むことが可能です。JSP 1.1 からは 開発者がカスタム・タグ・ライブラリを定義することによって、独自のタグを使用して複 雑な処理をカプセル化することが可能なので、Web デザイナーと Java 開発者の役割を明確 に分けることができます。
JDeveloper では Servlet 2.3 および JSP 1.2 に対応した次の機能を提供することで、Web ア プリケーションの開発をトータルに支援します( がついた機能は R9.0.3 の新機能です)。 ウィザード/ダイアログによるスケルトン・コードの生成 HTTP サーブレット・ウィザード サーブレット・フィルタ・ウィザード サーブレット・リスナー・ウィザード JSP タグ・ライブラリ・ウィザード JSP タグ・ウィザード 新規 JSP ダイアログ 新規 HTML ファイル・ダイアログ コンポーネント・パレットを使用した HTML/JSP ファイルへのタグの追加 Web アプリケーション開発のためのフレームワークとの連携 UIX Jakarta Struts
JDeveloper に組み込まれた Oracle9iAS Containers for J2EE(以下 OC4J)を使用した、 Servlet の実行とデバッグ 異なるマシン上で実行されている Servlet/JSP のデバッグ(リモート・デバッグ) ダイアログを使用した Web デプロイメント・ディスクリプタ(web.xml)の編集 WAR ファイルへのアセンブル アプリケーション・サーバーへのワンクリック・デプロイ スタンドアロン OC4J
Oracle9i Application Server WebLogic Server このチュートリアルではこれらの機能を使用して、Oracle データベースのサンプル・ユー ザーSCOTT の EMP 表にアクセスする簡単な JSP ページを作成します。実際の作業のステッ プは次のとおりです。 ① データベース・アクセスの準備 ② 新規 JSP ダイアログにより、JSP ページのスケルトン・コードを生成 ③ JSP ページにカスタム・タグの追加
データベース・アクセスの準備
データベース・アクセスの準備
データベース・アクセスの準備
データベース・アクセスの準備
接続ウィザードによる 接続ウィザードによる 接続ウィザードによる 接続ウィザードによる JDBC 接続情報の定義接続情報の定義接続情報の定義 接続情報の定義 JDeveloper では、データベースが稼動しているホスト名やユーザー名、パスワー ドなど、Java プログラムから JDBC を使用してリレーショナル・データベースにア クセスするために必要な情報を、接続ウィザードを使用して定義します。Oracle データベースに接続する JDBC 接続情報を定義するには、次の情報を入力する必要 があります。 画面 画面 画面 画面 説明説明説明説明 ステップ 1/4: タイプ 接続情報を識別するための名前と使用する JDBC ドライバの タイプを選択 ステップ 2/4: 認証 データベースにアクセスするためのユーザー名/パスワードステップ 3/4: 接続 使用する Oracle JDBC ドライバ(Thin/OCI)と Oracle データベ
ースを実行しているホスト名、SID、TNS リスナーが使用して いるポート番号 ステップ 4/4: テスト ステップ 1~3 で入力した情報を元に接続テストを実行 接続ウィザードは、Oracle データベースだけでなく、SQL92 に対応したデータ ベースに対応しています。一度定義された JDBC 接続情報は、ワークスペースおよ びプロジェクトとは独立して管理されるため、JDeveloper 上で開発されるあらゆる プロジェクトで再利用できます。 このチュートリアルでは、SCOTT ユーザーでデータベースに接続する「Scott」 という名前の JDBC 接続情報を使用することにします。接続ウィザードによって JDBC 接続情報を定義するための手順は、OTN-J で公開中の『はじめての Oracle9i JDeveloper R9.0.3』を参照してください。 DataSource とととと JDBC 接続情報接続情報接続情報 接続情報
DataSource は、JDBC 2.0 Standard Extension API で新たに導入された概念です。 java.sql.DriverManagerクラスを使用してデータベースにアクセスするため には、使用する JDBC ドライバやユーザー名/パスワードなどの情報を明示的に指 定する必要であるため、使用するデータベースが変更された場合には、ソース・ コードの修正や再コンパイルなどの作業が必要でした。一方、DataSource は、Java Naming and Directory(JNDI)サービスにバインドすることが可能なので、JNDI 参 照名を使用してデータベースにアクセスすることが可能になります。 DriverManager を使用したデータベース・アクセスを使用したデータベース・アクセスを使用したデータベース・アクセス を使用したデータベース・アクセス DriverManager.registerDriver(new OracleDriver()); Connection conn = DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:ORCL","soctt","tiger");
DataSource + JNDI サービスを使用したデータベース・アクセスサービスを使用したデータベース・アクセスサービスを使用したデータベース・アクセス サービスを使用したデータベース・アクセス InitialContext ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup("jdbc/ScottDS"); Connection conn = ds.getConnection();
JDeveloper で JDBC 接続情報を定義すると、指定した情報に基づいた DataSource が埋め込み OC4J サーバーの JNDI サービスに自動的に登録されます。例えば、こ のチュートリアルのように「Scott」という名前で JDBC 接続情報を定義すると、 埋め込み OC4J サーバーでは「jdbc/ScottDS」という JNDI 参照名で DataSource にアクセスすることが可能です。
JSP ページの新規作成
ページの新規作成
ページの新規作成
ページの新規作成
JDeveloper では次の手順で JSP のスケルトン・コードを生成します。 1. JDeveloper を起動し、ワークスペース tutorial_jsp.jws とプロジェクト jsp.jpr を作成します。このチュートリアルを始める前にワークスペースお よびプロジェクトに関する説明が必要な方は、OTN-J に掲載中の『はじめ ての Oracle9i JDeveloper R9.0.3』を参照してください。 2. ナビゲータでプロジェクト jsp.jpr を右クリックし、ポップアップ・メニュ ーから「新規」を選択します。「新規」ギャラリが起動されたら「カテゴリ」 ツリーから「Web Tier」−「JavaServer Pages(JSP)」を選択し、「項目」リ ストの「JSP ページ」をダブルクリックします。図 図図
3. 「新規 JSP」ダイアログが起動されるので、次のように入力し、「OK」をク リックしてください。 設定項目 設定項目 設定項目 設定項目 説明説明説明説明 設定する値設定する値設定する値設定する値 ディレクトリ名 生成される JSP ソース・ファイルを保存 するディレクトリ (デフォルト値) ファイル名 作成する JSP ソース・ファイルの名前 emp.jsp 図 図 図 図 2:::: 「新規「新規「新規 JSP」ダイアログ「新規 」ダイアログ」ダイアログ 」ダイアログ 4. プロジェクトに生成された JSP ページのソース・ファイル emp.jsp と、Web デプロイメント・ディスクリプタ web.xml が追加されます。
JSP ビューア
ビューア
ビューア
ビューア
JDeveloper は、ファイル・タイプに応じてさまざまなエディタおよびビューアを 提供します。JSP の場合は、コード・エディタのほかに JSP ビューアを使用するこ とができます。JSP のコード・エディタと JSP ビューアは、ページ・ディレクティ ブの contentType 属性での指定に応じて、自動的に文字セットを判別し、適切 に表示/保存することができます。 JSP ビューアは、ナビゲータで emp.jsp を右クリックし、「JSP ビューア」を選 択すると起動され、JSP ページにブラウザからアクセスした時のおおよその外観を 確認することができます。JSP ビューアに表示されているアイコン と はそれ ぞれ、コードに記述されたページ・ディレクティブと式を表しています。これら のアイコンの上にマウス・ポインタを合わせると、タグなど記述された内容がツ ール・チップで表示されます。また、これらのアイコンをダブルクリックすると、 コード・エディタで対応する開始タグがハイライトされ、その先頭にカーソルが 移動します。図 図図 図 3::: : JSP ビューアビューアビューア ビューア JSP ビューアで使用されるアイコンは次のとおりです。 アイコン アイコン アイコン アイコン 説明(例)説明(例)説明(例)説明(例) ページ・ディレクティブまたは taglib ディレクティブ (例: <%@ page contentType="text/html;charset=Shift_JIS"%>) 宣言(例: <%! int = 0; %>) 式(例: <%= new java.util.Date() %>) スクリプトレット(例: <% System.out.println(); %>) 空の標準 JSP タグ
(例: <jsp:getProperty name="beanName" property="propertyName"/>)
・・・ 空でない標準 JSP タグ (例: <jsp:include page="URL">・・・</jsp:include>) 空のカスタム・タグ(例: <prefix:tag attr="value"/>) ・・・ 空でないカスタム・タグ (例: <prefix:tag attr="value">・・・</prefix:tag>)
カスタム・タグ
カスタム・タグ
カスタム・タグ
カスタム・タグの追加
の追加
の追加
の追加
JDeveloper にはあらかじめさまざまなカスタム・タグ・ライブラリがコンポーネ ント・パレットに登録されています。コンポーネント・パレットに登録されたタ グは、次の手順で JSP に追加することができます。 ① タグを追加する場所にカーソルを移動 ② コンポーネント・パレットでタグを選択③ (選択したタグに属性の指定が可能な場合)JavaServer Page Tag Editor が起 動され、必要に応じて属性値を設定
このチュートリアルでは、OC4J が提供するタグ・ライブラリ OJSP SQL のうち、 次の 3 つのタグを使用して、データベースへの問合せ結果を表形式で表示します。
タグ名 タグ名 タグ名 タグ名 説明説明説明説明 dbOpenタグ ・JDBC URL とユーザー名/パスワード ・DataSource の JNDI 参照名 のいずれかで指定されたデータベースへの接続をオープン dbQueryタグ 問合せを実行し、その結果を出力 dbCloseタグ データベース接続をクローズ それぞれのタグを追加する手順は次のとおりです(コンポーネント・パレット が表示されていない場合は、メニューバーから「表示」→「コンポーネント・パ レット」を選択してください)。 1. emp.jsp をコード・エディタで開き、15 行目の先頭にカーソルを移動します。 図 図 図 図 4:::: doOpen タグを追加する場所にカーソルを移動タグを追加する場所にカーソルを移動タグを追加する場所にカーソルを移動タグを追加する場所にカーソルを移動 2. コンポーネント・パレットのリスト・ボックスから、「OJSP SQL」を選択し、 「dbOpen」をクリックします。 図 図 図 図 5:コンポーネント・パレットで「:コンポーネント・パレットで「:コンポーネント・パレットで「:コンポーネント・パレットで「dbOpen」をクリック」をクリック」をクリック」をクリック
3. JavaServer Page Tag Editor が起動されるので、次の属性の値を指定し、「OK」 をクリックします。
属性名 属性名 属性名
属性名 説明説明説明説明 指定する値指定する値指定する値指定する値
connId オープンする接続の ID conn
dataSource 使用する DataSource の JNDI 参照名 jdbc/ScottDS※
※ 『データベース・アクセスの準備』で定義した JDBC 接続名が「Scott」の場合
図 図 図
図 6:::: JavaServer Page Tag Editor
これにより、emp.jsp に tablib ディレクティブと dbOpen タグが追加さ れます。
備考 備考備考
備考:::: JavaServer Page Tag Editor の「ヘルプ」をクリックすると、タグおよびその
属性の詳しい説明が表示されます。
4. dbOpen タグの次の行の先頭にカーソルを移動し、コンポーネント・パレッ トで「dbQuery」をクリックします。
5. JavaServer Page Tag Editor が起動されるので、次の属性の値を指定し、「OK」 をクリックします。
属性名 属性名 属性名
属性名 説明説明説明説明 指定する値指定する値指定する値指定する値
connId dbOpenタグで指定した connId の値 conn
output 次の 3 つから出力形式を選択 ・HTML(HTML 表) ・JDBC(java.sql.ResultSet オブジェクト) ・XML(XML 文字列/XML DOM) HTML これにより、emp.jsp に dbQuery タグが追加されます。 6. 次のように、dbQuery タグの開始タグと終了タグの間に SELECT 文を記述 します。
<database:dbQuery connId="conn" output="HTML"> SELECT * FROM EMP
</database:dbQuery>
8. JavaServer Page Tag Editor が起動されたら、属性「connId」の値として 「conn」(dbOpen タグで指定した connId の値)を指定し、「OK」をクリ ックします。これにより、emp.jsp に dbClose タグが追加されます。
テスト
テスト
テスト
テスト
JDeveloper には J2EE アプリケーションを実行/デバッグするために Oracle9iAS Containers for J2EE(OC4J)が組み込まれているので、作成した JSP をその場で簡 単にテストすることが可能です。 作成した emp.jsp を実行するには、ナビゲータで emp.jsp を選択した状態でツ ールバーの アイコンをクリックします。これにより、OC4J が起動され、そのス テータスはログ・ウィンドウの「埋め込み OC4J サーバー」タブ・ページで確認す ることが可能です。また、通常使用している Web ブラウザを自動的に起動するた め、簡単に実行結果を確認することが可能です。 なお、環境によっては埋め込み OC4J サーバーや Web ブラウザのための環境設 定が必要な場合があります。詳細は『付録 A: JDeveloper の環境設定』を参照し てください。 図 図図 図 7::: : 実行イメージ実行イメージ実行イメージ 実行イメージ
埋め込み 埋め込み 埋め込み 埋め込み OC4J サーバーの停止サーバーの停止サーバーの停止サーバーの停止 JDeveloper によって起動された埋め込み OC4J サーバーを停止するには、次の 2 つの方法があります。 a. メニューバーから「実行」→「終了」→「埋め込み OC4J サーバー」を実行 b. Run Manager(メニューバーから「表示」→「Run Manager」を実行して表示)
の「プロセス」ノードの下の「埋め込み OC4J サーバー」を右クリックし、 ポップアップ・メニューから「終了」を選択 図 図 図 図 8:::: Run Manager
JDeveloper によるカスタム・タグ・ライブラリの作成
によるカスタム・タグ・ライブラリの作成
によるカスタム・タグ・ライブラリの作成
によるカスタム・タグ・ライブラリの作成
カスタム・タグ・ライブラリは、ファイルタグ・ハンドラ・クラスとタグ・ライブラリ・ ディスクリプタから構成されます。 タグ・ハンドラ・クラスタグ・ハンドラ・クラスタグ・ハンドラ・クラスタグ・ハンドラ・クラス javax.servlet.jsp.tagextを用いて作成された Java クラスで、このクラスの中で、 タグの動作を記述します。 タグ・ライブラリ・ディスクリプタ(タグ・ライブラリ・ディスクリプタ(タグ・ライブラリ・ディスクリプタ(タグ・ライブラリ・ディスクリプタ(TLD)))) タグ・ハンドラ・クラスと、実際のタグ名の関連付けを定義する拡張子が tld のファイ ルで、XML 形式で記述します。 JDeveloper を使用してカスタム・タグ・ライブラリを作成する手順は次のとおりです。 ① JSP タグ・ライブラリ・ウィザードを使用して TLD のスケルトンを生成し、プロジ ェクトに追加 ② JSP タグ・ウィザードを使用してタグ・ハンドラ・クラスのスケルトンを生成 ③ JSP Tag Attribute Wizard を使用してタグに属性を追加④ (オプション)JDeveloper のコンポーネント・パレットに登録 このチュートリアルでは、属性 userName に指定された値を元に簡単なメッセージを返 すタグ hello を含むカスタム・タグ・ライブラリを作成し、『JDeveloper による JSP の作成』 で作成した emp.jsp に追加します。
TLD の作成
の作成
の作成
の作成
JDeveloper を使用してカスタム・タグ・ライブラリを作成するには、最初に JSP タグ・ライブラリ・ウィザードを使用して TLD を生成します。 1. ワークスペース tutorial_jsp.jws に新規の空のプロジェクト taglib.jpr を追 加します。 2. ナビゲータでプロジェクト taglib.jpr を右クリックし、ポップアップ・メニ ューから「新規」を選択して「新規」ギャラリを起動します。3. 「新規」ギャラリで「カテゴリ」ツリーから「Web Tier」−「JavaServer Pages (JSP)」を選択し、「項目」リストの「JSP タグ・ライブラリ」をダブルク リックします。
4. JSP タグ・ライブラリ・ウィザードが起動され、「Welcome」画面が表示さ れます。次回からこの画面を表示させないようにするためには「次回この ページを表示」のチェックを外してから、「次へ」をクリックしてください。 図 図図 図 9::: : JSP タグ・ライブラリ・ウィザードタグ・ライブラリ・ウィザードタグ・ライブラリ・ウィザード タグ・ライブラリ・ウィザード 5. JSP タグ・ライブラリ・ウィザードの「記述子情報」画面では、作成するタ グ・ライブラリの情報を入力します。「タグ・ライブラリ情報」以外の項目 は必ず入力する必要があります。次のように入力してから「次へ」をクリッ クしてください。 項目 項目 項目 項目 説明説明説明説明 設定する値設定する値 設定する値設定する値 短縮名 ライブラリのわかりやすい名前 JDeveloper では TLD ファイル名 としても使用 tutorialTagLib JSP バージョン タグ・ライブラリが準拠する JSP バージョン 1.2 タグ・ライブラリの バージョン タグ・ライブラリ自体の バージョン 1.0 タグ・ライブラリ URI タグ・ライブラリを識別するため の文字列 tutorialTagLib タグ・ライブラリ情報 タグ・ライブラリに関する説明 (任意)
図 図 図 図 10:::: JSP タグ・ライブラリ・ウィザード「記述子情報」画面タグ・ライブラリ・ウィザード「記述子情報」画面タグ・ライブラリ・ウィザード「記述子情報」画面タグ・ライブラリ・ウィザード「記述子情報」画面 6. JSP タグ・ライブラリ・ウィザードの「JSP 1.2 オプション」画面では、タグ・ ライブラリの表示名およびタグ・ライブラリを表すアイコン(GIF または JPEG フォーマットのイメージ・ファイル)を指定することができます。今 回は何も指定せずに「終了」をクリックしてください。 図 図 図 図 11::: : JSP タグ・ライブラリ・ウィザード「タグ・ライブラリ・ウィザード「タグ・ライブラリ・ウィザード「JSP 1.2 オプション」画面タグ・ライブラリ・ウィザード「 オプション」画面オプション」画面 オプション」画面 7. JSP タグ・ライブラリ・ウィザードを終了すると、tutorialTagLib.tld、 web.xml、デプロイメント・ディスクリプタ taglib.deploy の 3 つがプロジ ェクト taglib.jpr に追加されます。 tutorialTagLib.tld <taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>tutorialTagLib</short-name> <uri>tutorialTagLib</uri> <description>・・・</description> </taglib>
タグ・ハンドラ・ク
タグ・ハンドラ・ク
タグ・ハンドラ・ク
タグ・ハンドラ・クラスの作成
ラスの作成
ラスの作成
ラスの作成
カスタム・タグ・ライブラリにタグを追加するには、JSP タグ・ウィザードを使 用します。JSP タグ・ウィザードにより、タグ・ハンドラ・クラスのスケルトン・ コードが生成され、TLD にタグの情報(タグの名前とタグ・ハンドラ・クラスの マッピングや属性の情報)が追加されます。 1. タグ・ハンドラ・クラスのパッケージを指定するために、ナビゲータでプ ロジェクト taglib.jpr をダブルクリックし、「プロジェクトの設定」ダイア ログを起動します。 2. 左側のツリーから「共通」−「入力パス」を選択し、「デフォルト・パッケ ージ」を tutorial.taglib に変更します。 図 図 図 図 12:::: デフォルト・パッケージの変更デフォルト・パッケージの変更デフォルト・パッケージの変更 デフォルト・パッケージの変更 3. ナビゲータで tutorialTagLib.tld を右クリックし、ポップアップ・メニュー から「タグの追加」を選択し、JSP タグ・ウィザードを起動します。 図 図 図 図 13::: : JSP タグ・ウィザードの起動タグ・ウィザードの起動タグ・ウィザードの起動 タグ・ウィザードの起動4. JSP タグ・ウィザードが起動され、「Welcome」画面が表示されます。次回 からこの画面を表示させないようにするためには「次回このページを表示」 のチェックを外してから、「次へ」をクリックしてください。 図 図 図 図 14::: : JSP タグ・ウィザード「タグ・ウィザード「タグ・ウィザード「Welcome」画面タグ・ウィザード「 」画面」画面」画面 5. JSP タグ・ウィザード「ステップ 1/3: 一般情報」では、これから作成する タグの基本的な情報を指定します。次のように入力してから、「次へ」をク リックしてください。 項目 項目 項目 項目 説明説明説明説明 設定する値設定する値 設定する値設定する値 タグ名 タグの名前 hello タグ・クラス名 タグ・ハンドラ・クラスの名前 HelloTag パッケージ名 タグ・ハンドラ・クラスの パッケージ名 tutorial.taglib ボディ・コンテキスト タグ・ボディの処理方法を次の 3 つから選択 ・Empty1 ・JSP2 ・tagdependent3 Empty 説明 タグの説明 (任意) 1 タグ・ボディを持たない場合(空要素の場合)に選択します。 2 タグ・ボディが JSP トランスレータによって処理される場合(JSP 標準タグやカスタム・ タグ、スクリプトレット、HTML など)に選択します。 3 タグ・ボディが JSP トランスレータによって処理されず、タグ・ハンドラ・クラスによ って処理される場合に選択します。
図 図 図 図 15::: : JSP タグ・ウィザード「ステップタグ・ウィザード「ステップタグ・ウィザード「ステップ 1/3: 一般情報」タグ・ウィザード「ステップ 一般情報」一般情報」一般情報」 6. JSP タグ・ウィザードの「ステップ 2/3: コード生成」では、タグ・ハンド ラ・クラスのコード生成オプションを指定します。今回は、ボディ・コンテ キストを Empty に設定したため、タグ・ハンドラ・クラスは次のいずれか を満たす必要があります。 a. javax.jsp.tagext.TagSupport クラスを拡張 b. javax.jsp.tagext.Tag インタフェースを実装 今回は、ラジオボックス「タグ・クラスの拡張」がチェックされ、リスト・ ボックスで「TagSupport」が選択されていることを確認して「次へ」をクリ ックしてください。 図 図 図 図 16:::: JSP タグ・ウィザード「ステップタグ・ウィザード「ステップタグ・ウィザード「ステップタグ・ウィザード「ステップ 2/3: コード生成」コード生成」コード生成」コード生成」 7. JSP タグ・ウィザードの「ステップ 3/3: タグ記述」では、カスタム・タグ の追加情報オプションを指定できます。今回はデフォルトのまま「終了」
図 図 図 図 17::: : JSP タグ・ウィザード「ステップタグ・ウィザード「ステップタグ・ウィザード「ステップ 3/3: タグ記述」タグ・ウィザード「ステップ タグ記述」タグ記述」タグ記述」 8. JSP タグ・ウィザードを終了すると、HelloTag.java がナビゲータの tutorialTagLib.tld の下に追加され、TLD にタグの情報が追加されています。 図 図 図 図 18:::: HelloTag.java tutorialTagLib.tld に追加されたエンに追加されたエンに追加されたエンに追加されたエントリトリトリ トリ <tag> <name>hello</name> <tag-class>tutorial.taglib.HelloTag</tag-class> <body-content>Empty</body-content> <description>簡単なメッセージを返すタグです。簡単なメッセージを返すタグです。簡単なメッセージを返すタグです。簡単なメッセージを返すタグです。</description> <example>このタグの使用方法を示す簡単なこのタグの使用方法を示す簡単なこのタグの使用方法を示す簡単なこのタグの使用方法を示す簡単なSnippet。。。。</example> </tag>
タグ・ハンドラ・クラスのカスタマイズ
タグ・ハンドラ・クラスのカスタマイズ
タグ・ハンドラ・クラスのカスタマイズ
タグ・ハンドラ・クラスのカスタマイズ
属性の追加 属性の追加 属性の追加 属性の追加 カスタム・タグが属性をもつ場合には、TLD に名前や型などの情報を記述し、 タグ・ハンドラ・クラスにその属性値を設定・取得する setter/getter メソッドを実 装する必要があります。JDeveloper では、JSP Tag Attribute Wizard を使用すること で、TLD へのエントリの追加とメソッドの実装を自動化することができます。1. ナビゲータで HelloTag.java を右クリックし、ポップアップ・メニューから 「属性の追加」を選択します。
図 図 図
図 19::: : 「「「「JSP Tag Attribute Wizard」の起動」の起動」の起動」の起動
2. 「JSP Tag Attribute Wizard」が起動されるので、次のように設定して「OK」 をクリックします。 項目 項目 項目 項目 説明説明説明説明 設定する値設定する値設定する値設定する値 名前 属性の名前 userName 必須 必ず値を指定しなければいけない場 合にチェックする チェックする 要求時に値を評価 リクエストが処理される際に、属性 値を評価する場合に選択(属性値の 指定に式を使用することが可能) 選択しない JSP 変換時に値を評価 JSP トランスレータによって Servlet に変換される際に属性値を評価する 場合に選択(属性値の指定は文字列 リテラル値を使用) 選択する デフォルトの属性値 値が指定されなかった場合の値 (指定しない) タイプ 属性の型 String
図 図 図
図 20:::: JSP Tag Attribute Wizard
3. JSP Tag Attribute Wizard を終了すると、HelloTag.java に getUserName() および setUserName()メソッドが追加され、TLD に属性 userName の情 報が追加されます。 tutorialTagLib.tld に追加されたエントリに追加されたエントリに追加されたエントリに追加されたエントリ <attribute> <name>userName</name> <required>true</required> <rtexprvalue>false</rtexprvalue> </attribute> タグの処理の実装 タグの処理の実装 タグの処理の実装 タグの処理の実装 このチュートリアルで作成した hello タグは、ボディ・コンテキストが Empty に設定されているので、タグの処理は doStartTag()メソッドに実装します。次 のように doStartTag()メソッドに太字太字太字太字の部分を追加してください。 doStartTag
public int doStartTag() throws JspException {
try {
JspWriter out = pageContext.getOut();
out.println("こんにちは、こんにちは、こんにちは、こんにちは、" + userName + "さんさんさんさん"); } catch(Exception e) { e.printStackTrace(); } return SKIP_BODY; }
コンポーネント・パレットへの登録
コンポーネント・パレットへの登録
コンポーネント・パレットへの登録
コンポーネント・パレットへの登録
JDeveloper のコンポーネント・パレットには、次の手順で開発者が作成したカス タム・タグ・ライブラリを追加することが可能です。 ① アーカイブ・ファイルの作成 ② ライブラリの登録 ③ タグの登録 アーカイブ・ファイルの作成 アーカイブ・ファイルの作成 アーカイブ・ファイルの作成 アーカイブ・ファイルの作成 JDeveloper では各種アーカイブ・ファイルを作成する際に必要となる設定情報 (アーカイブに含めるファイルの設定や生成するファイルの名前など)を拡張子 が deploy のデプロイメント・プロファイルに保存します。カスタム・タグ・ライ ブラリの場合は、JSP タグ・ライブラリ・ウィザードによって TLD が生成される のと同時に、JAR デプロイメント・プロファイル(JAR ファイルを生成するため のデプロイメント・プロファイル)taglib.deploy が生成されます。taglib.deploy の設定内容を確認するには、ナビゲータでダブルクリックして「JAR デプロイメ ント・プロファイル設定」ダイアログが起動します。 図 図図 図 21::: : 「「「「JAR デプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログ デプロイメント・プロファイル設定」ダイアログ JAR ファイルを生成するには、ナビゲータで taglib.deploy を右クリックし、 「JAR ファイルにデプロイ」を選択します。JAR ファイルの作成状況は、ログ・図 図図 図 22::: : ログ・ウィンドウ「配布」タブ・ページログ・ウィンドウ「配布」タブ・ページログ・ウィンドウ「配布」タブ・ページログ・ウィンドウ「配布」タブ・ページ ライブラリの登録 ライブラリの登録 ライブラリの登録 ライブラリの登録 次に生成した JAR ファイルをライブラリとして登録します。ライブラリの登録 は、メニューバーから「ツール」→「ライブラリの管理」を選択すると表示され る「ライブラリの管理」ダイアログを使用します。作成したカスタム・タグ・ラ イブラリをコンポーネント・パレットに登録するためには、「JSP ライブラリ」タ ブ・ページを開き、「新規」ボタンをクリックします。これにより、「TLD ファイ ル」、「アーカイブ」、「URI」、「接頭辞」の各フィールドがアクティブになるのでそ れぞれ次のように設定し、「OK」をクリックします。 項目 項目 項目 項目 設定する値設定する値設定する値設定する値 TLD ファイル このチュートリアルで作成した tutorialTagLib.tld を指定 アーカイブ 『アーカイブ・ファイルの作成』で作成した JAR ファイルを指定 URI tutorialTagLib(TLD の記述に応じて自動的に設定される) 接頭辞 tutorial 図 図 図 図 23:::: 「ライブラリの管理」ダイアログ「ライブラリの管理」ダイアログ「ライブラリの管理」ダイアログ 「ライブラリの管理」ダイアログ
タグの登録 タグの登録 タグの登録 タグの登録 最後に、コンポーネント・パレットにタグを登録します。コンポーネント・パ レットへの登録はメニューバーから「ツール」→「パレットの設定」を選択する と表示される「コンポーネント・パレットの設定」ダイアログを使用します。 まず、タグを登録するためのページを追加するためのページを追加するために、 「ページ」リストの下の「追加」をクリックします。これにより、「新規パレット・ ページ」ダイアログが起動されるので、ページ名に「Tutorial」と入力し、「ページ 種別」として「jsp」を選択します。 図 図図 図 24::: : 「新規パレット・ページ」ダイアログ「新規パレット・ページ」ダイアログ「新規パレット・ページ」ダイアログ「新規パレット・ページ」ダイアログ 次に、作成した「Tutorial」ページに作成した hello タグを登録します。「新規パ レット・ページ」ダイアログの「ページ」リストで先ほど作成した「Tutorial」が 選択されていることを確認してから、「コンポーネント」リストの下の「追加」を クリックし、「Add JSP Tag Component(s)」ダイアログを起動してください。「追加 するタグを選択」ツリーの中から「tutorial」の下の「hello」を選択し、「OK」をク リックします。
図 図 図
図 25::: : 「「「Add JSP Tag Component(s)」ダイアログ「 」ダイアログ」ダイアログ」ダイアログ
「Install tag(s)?」というダイアログが表示されたら、「はい」をクリックし、「コ ンポーネント・パレットの設定」ダイアログの「コンポーネント」リストに「hello」 タグが追加されていることを確認してから「OK」をクリックします。 図 図 図 図 26:::: 「コンポーネント・パレットの設定」ダイアログ「コンポーネント・パレットの設定」ダイアログ「コンポーネント・パレットの設定」ダイアログ「コンポーネント・パレットの設定」ダイアログ
作成したカスタム・タグの使用
作成したカスタム・タグの使用
作成したカスタム・タグの使用
作成したカスタム・タグの使用
では、コンポーネント・パレットを使用して、作成した hello タグを emp.jsp に 追加してみましょう。 1. emp.jsp をコード・エディタで開き、16 行目の先頭(dbOpen タグをコー ルしている前の行)にカーソルを移動します。 図 図 図 図 27:::: カスタムカスタムカスタムカスタム・タグを追加する場所にカーソルを移動・タグを追加する場所にカーソルを移動・タグを追加する場所にカーソルを移動 ・タグを追加する場所にカーソルを移動 2. コンポーネント・パレットで「Tutorial」ページを開き、「hello」をクリック します。 図 図 図 図 28:::: コンポーネント・パレットコンポーネント・パレットコンポーネント・パレット コンポーネント・パレット 「 「 「 「Tutorial」ページ「」ページ「」ページ「」ページ「hello」タグ」タグ」タグ」タグ3. JavaServer Page Tag Editor が表示されるので、属性 userName に任意の文字 列を指定し、「OK」をクリックします。
Oracle9i Application Server へのデプロイ
へのデプロイ
へのデプロイ
へのデプロイ
J2EE アプリケーションは、EJB や Web アプリケーションなどを、それぞれのタイプに応 じたモジュールにアセンブルして(一つにまとめて)から、Enterprise Archive ファイル(EAR ファイル−拡張子が.ear の JAR ファイル)にパッケージして、実行環境へデプロイします。 Web アプリケーションは、Web モジュールとしてアセンブルされ、通常は Web Archive ファ イル(WAR ファイル−拡張子が.war の JAR ファイル)にパッケージされます。
このチュートリアルで作成した JSP アプリケーションを JDeveloper から Oracle9i Application Server R9.0.3(Oracle9iAS)へデプロイする手順をまとめると次のとおりです。
① 接続ウィザードを使用して、デプロイ先の Oracle9iAS への接続情報を定義 ② 作成した Web アプリケーションを WAR ファイル/EAR ファイルとしてアセンブル
するために必要な情報を格納した Web デプロイメント・プロファイルを作成 ③ 作成した Web デプロイメント・プロファイルおよび Oracle9iAS への接続情報を使 用してデプロイを実行(これにより、ファイルが適切な位置にコピーされ、設定 が変更されます)
Oracle9iAS への接続情報の定義
への接続情報の定義
への接続情報の定義
への接続情報の定義
JDeveloper では、ホスト名やユーザー名、パスワードなど、デプロイ先の Oracle9iAS にアクセスするために必要な情報を、接続ウィザードを使用して定義し ます。一度定義された Oracle9iAS への接続情報は、ワークスペースおよびプロジ ェクトとは独立して管理されるため、JDeveloper 上で開発されるあらゆるプロジェ クトで再利用できます。 ロー ロー ロー ローカルのカルのカルの Oracle9iAS にデプロイする場合カルの にデプロイする場合にデプロイする場合にデプロイする場合 JDeveloper と同じマシンにインストールされている Oracle9iAS に対してアプリ ケーションをデプロイする場合は、次のように接続情報を定義します。 1. システム・ナビゲータの「接続」→「アプリケーション・サーバー」フォ ルダを右クリックし、ポップアップ・メニューの「接続の作成」を選択し ます。 2. 接続ウィザードが起動され、「ようこそ」画面が表示されます。次回からこ の画面を省略する場合は、「次回このページを表示」のチェックを外してか ら、「次へ」をクリックしてください。図 図図 図 30:::: 接続ウィザード「ようこそ」接続ウィザード「ようこそ」接続ウィザード「ようこそ」接続ウィザード「ようこそ」 3. 接続ウィザード「ステップ 1/2: タイプ」では、接続のタイプを選択します。 次のように入力し、「次へ」をクリックしてください。 設定項目 設定項目 設定項目 設定項目 説明説明説明説明 設定する値設定する値設定する値設定する値 接続名 定義した情報を識別するための名前 Local_9iAS 接続タイプ 接続するアプリケーション・サーバーを選択 Oracle9i Application Server – Local DCM 図 図図 図 31:::: 接続ウィザ接続ウィザ接続ウィザ接続ウィザード「ステップード「ステップード「ステップ 1/2: タイプ」ード「ステップ タイプ」タイプ」タイプ」 4. 接続ウィザード「ステップ 2/2: 接続」では、Oracle9iAS がインストールさ れている Oracle ホーム・ディレクトリを指定します。 図 図 図 図 32:::: 接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ 2/2: 接続」接続」接続」接続」
5. 「終了」ページが表示されます。以上でローカルの Oracle9iAS 接続情報の 設定は終了です。「終了」をクリックし、接続ウィザードを終了します。 図 図 図 図 33::: : 接続ウィザード「終了」接続ウィザード「終了」接続ウィザード「終了」 接続ウィザード「終了」 リモートの リモートの リモートの リモートの Oracle9iAS にデプロイする場合にデプロイする場合にデプロイする場合にデプロイする場合 デプロイ先の Oracle9iAS が異なるマシンにインストールされている場合は、次 のように接続情報を定義します。 1. システム・ナビゲータの「接続」→「アプリケーション・サーバー」フォ ルダを右クリックし、ポップアップ・メニューの「接続の作成」を選択し ます。 2. 接続ウィザードが起動され、「ようこそ」画面が表示されます。次回からこ の画面を省略する場合は、「次回このページを表示」のチェックを外してか ら「次へ」をクリックしてください。 3. 接続ウィザード「ステップ 1/4: タイプ」では、接続のタイプを選択します。 次のように入力し、「次へ」をクリックしてください。 設定項目 設定項目 設定項目 設定項目 説明説明説明説明 設定する値設定する値設定する値設定する値 接続名 定義した情報を識別するための名前 Remote_9iAS 接続タイプ 接続するアプリケーション・サーバーを選択 Oracle9i Application Server – Remote DCM
図 図図 図 34:::: 接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ 1/4: タイプ」タイプ」タイプ」タイプ」 4. 接続ウィザード「ステップ 2/4: 認証」では、デプロイ時に使用するユーザ ー名とパスワードを指定します。Oracle9iAS の管理者ユーザーias_admin とインストール時に指定したパスワードを入力します。 図 図 図 図 35:::: 接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ 2/4: 認証」認証」認証」認証」 5. 接続ウィザード「ステップ 3/4: 接続」では、デプロイする Oracle9iAS の Enterprise Manager Web サイトを実行しているホスト名および HTTP ポート 番号、Oracle9iAS がインストールされた Oracle ホーム・ディレクトリなど を指定します。 設定する項目 設定する項目 設定する項目 設定する項目 説明説明説明説明
Enterprise Manager OC4J の ホスト名
Enterprise Manager Web サイトを実行している ホスト名
Enterprise Manager OC4J の HTTP ポート
Enterprise Manager Web サイトにアクセスするた めの HTTP ポート番号 リモート 9iAS の Oracle ホーム・ディレクトリ Oracle9iAS をインストールした Oracle ホーム・ ディレクトリを指定 OC4J のインスタンス名 特定の OC4J インスタンスにだけデプロイする 場合に、インスタンス名を指定
図 図 図 図 36 接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ 3/4: 接続」接続」接続」接続」 6. 接続ウィザード「ステップ 4/4: テスト」では、指定した情報に基づいて接 続のテストを行うことが可能です。接続先の Oracle9iAS が起動されている 場合は、「接続のテスト」をクリックし、「ステータス」に「成功」と表示 されることを確認してください。 図 図図 図 37:::: 接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ接続ウィザード「ステップ 4/4: テスト」テスト」テスト」テスト」 7. 「終了」ページが表示されます。以上でローカルの Oracle9iAS 接続情報の 設定は終了です。「終了」をクリックし、接続ウィザードを終了します。
WAR デプロイメント・プロファイルの作成
デプロイメント・プロファイルの作成
デプロイメント・プロファイルの作成
デプロイメント・プロファイルの作成
JDeveloper では、Web アプリケーションとして WAR ファイルにアセンブルする ための情報をデプロイ先のアプリケーション・サーバーの情報とは別に管理しま す。WAR ファイルにアセンブルするための情報を記述したファイルを JDeveloper では WAR デプロイメント・プロファイルと呼びます。
a. ナビゲータで web.xml(このチュートリアルの場合は jsp.jpr の web.xml) を右クリックし、「WAR デプロイメント・プロファイルの作成」を選択 b. (このチュートリアルの場合はナビゲータで jsp.jpr が選択された状態で)
「新規」ギャラリのカテゴリから「General」−「Deployment Profiles」を選 択し、「項目」リストから「WAR ファイル - J2EE Web モジュール」をダブ ルクリック これにより、「デプロイメント・プロファイルの保存 -- WAR ファイル – J2EE Web モジュール」ダイアログが起動されるので、ファイル名を指定します。今回 はデフォルトの「webapp1.deploy」を使用することにします。 図 図 図 図 38::: : WAR デプロイメント・プロファイルの保存デプロイメント・プロファイルの保存デプロイメント・プロファイルの保存デプロイメント・プロファイルの保存 ダイアログで「保存」をクリックすると、プロジェクトに webapp1.deploy が 追加され、「WAR デプロイメント・プロファイル設定」ダイアログが起動されます。 このダイアログを使用して次の設定を行うことが可能です。
ページ ページ ページ ページ 説明説明説明説明 一般 このプロファイルにより生成される WAR/EAR ファイルの ファイル名、J2EE アプリケーション名、Web アプリケー ションのコンテキスト・ルートを指定 WAR ファイル WAR ファイルに含める JSP、HTML、イメージ・ファイル などを指定
WAR オプション WAR ファイルを圧縮するか、MANIFIST ファイルを含め るかどうかの設定
WEB-INF/classes WEB-INF/class ディレクトリに含める Java クラスの選択
WEB-INF/lib 現在のプロジェクトに設定されているライブラリを構成 する JAR ファイルから、WEB-INF/lib に含めるものを選択 アプレット・オプション デプロイする Web アプリケーションにアプレットが含ま れている場合に使用 プロファイルの依存性 このプロファイルにより生成される EAR ファイルに他の モジュールを含める場合、そのモジュールをアセンブルす る設定が記述されたプロファイルを選択 プラットフォーム デフォルトのデプロイ先アプリケーション・サーバーおよ び EAR/WAR ファイルのみを生成する場合にアプリケーシ ョン・サーバー独自のデプロイメント・プロファイルを含 めるかどうかを選択 図 図 図 図 39:::: 「「「「WAR デプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログ 今回は Web アプリケーションのコンテキスト・ルートを「tutorial_jsp」に変更し ます。「WAR デプロイメント・プロファイル設定」ダイアログの「一般」ページで、
「Web アプリケーションのコンテキスト・ルート」で「J2EE Web コンテキスト・ ルートを指定」を選択してから、「tutorial_jsp」と入力してください。 図 図 図 図 40:::: 「「「WAR デプロイメント・プロファイル設定」ダイアログ−「一般」「 デプロイメント・プロファイル設定」ダイアログ−「一般」デプロイメント・プロファイル設定」ダイアログ−「一般」デプロイメント・プロファイル設定」ダイアログ−「一般」ページページページページ Web アプリケーションのコンテキスト・ルートの設定アプリケーションのコンテキスト・ルートの設定アプリケーションのコンテキスト・ルートの設定アプリケーションのコンテキスト・ルートの設定 これにより、デプロイされた JSP は次の URL で実行できます。 http://<ホスト名ホスト名ホスト名ホスト名>:<HTTPポート番号ポート番号ポート番号ポート番号>/tutorial_jsp/emp.jsp
デプロイの実行
デプロイの実行
デプロイの実行
デプロイの実行
作成した Oracle9iAS 接続情報(「Local_9iAS」または「Remote_9iAS」)と WAR デプロイメント・プロファイルを使用して、デプロイを実行します。リモートの Oracle9iAS にデプロイする場合は、Oracle9iAS が起動されている必要があります。 WAR デプロイメント・プロファイルをナビゲータで右クリックし、ポップアッ プ・メニューから「配布先」→「<Oracle9iAS接続情報名>」を選択してください。 図 図 図 図 41:::: デプロイの実行デプロイの実行デプロイの実行 デプロイの実行 これにより、ログ・ウィンドウに「配布」タブ・ページが追加され、デプロイ のステータスが表示されます。図 42 のように「DCMサーブレット・クライアント の終了ステータス: 0」(ローカルの Oracle9iAS の場合は「dcmctlの終了ステー タス: 0」)と表示されればデプロイは成功です。
図 図 図 図 42:::: ログ・ウィンドウ「配布」タブ・ページログ・ウィンドウ「配布」タブ・ページログ・ウィンドウ「配布」タブ・ページ ログ・ウィンドウ「配布」タブ・ページ デプロイが完了したら、Web ブラウザから JSP にアクセスして、動作を確認し てください。
他のアプリケーション・サーバーへのデプロイ
他のアプリケーション・サーバーへのデプロイ
他のアプリケーション・サーバーへのデプロイ
他のアプリケーション・サーバーへのデプロイ
このチュートリアルでは、Oracle9iAS へのデプロイ方法について説明しましたが、 JSP 1.2 に対応していれば、Oracle9iAS 以外のアプリケーション・サーバーへデプ ロイすることも可能です。 次のアプリケーション・サーバーに対しては、Oracle9iAS の場合と同様に、デプ ロイ先のアプリケーション・サーバーへの接続情報を定義することで、クリック 一つでデプロイを実行することが可能です。 Tスタンドアロン OC4J TWebLogic Server 6.x/7.xこれ以外のアプリケーション・サーバー(Jakarta Tomcat や WebSphere Application Server など)の場合は、WAR ファイルまたは EAR ファイルを生成し、アプリケー ション・サーバーで指定された方法でデプロイします。WAR ファイルを生成する には、WAR デプロイメント・プロファイルを右クリックし、ポップアップ・メニ ューから「WAR ファイルへデプロイ」を、EAR ファイルは同様に「EAR ファイル へデプロイ」を選択します。
備考 備考備考
備考: : : OC4J にデプロイする方法は、OTN-J で公開中の『Oracle9i JDeveloper チュ:
ートリアル R9.0.3∼Servlet 編』で詳しく説明しています。WebLogic Server へのデ プロ イ方 法は 、OTN-J で公開中の『Oracle9i JDeveloper & BEA WebLogic 6.1』を参照してください。
OJSP SQL タグ・ライブラリのための設定タグ・ライブラリのための設定タグ・ライブラリのための設定タグ・ライブラリのための設定
Oracle9iAS または OC4J では、あらかじめ OJSP SQL タグ・ライブラリが構成さ れているため、デプロイ時に特別な設定は必要ありません。Oracle9iAS または OC4J 以外のアプリケーション・サーバーにデプロイする場合は、OJSP SQL を一緒にデ
プロイする必要があります。OJSP SQL を WAR ファイルに含める「WAR デプロイ メント・プロファイル設定」ダイアログの「WAR ファイル」−「WEB-INF/lib」ペ ージで、図 43 のように「ojsputil.jar」をチェックします。 図 図 図 図 43:::: 「「「「WAR デプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログデプロイメント・プロファイル設定」ダイアログ 「 「「 「WAR ファイル」−「ファイル」−「ファイル」−「ファイル」−「WEB-INF/lib」ページ」ページ」ページ 」ページ Oracle9iAS R9.0.2.x へのデプロイへのデプロイへのデプロイへのデプロイ JDeveloper R9.0.3 では、Oracle9iAS R9.0.2 および R9.0.3 へのデプロイをサポート していますが、リモートの Oracle9iAS R9.0.2 に対してアプリケーションをデプロ イするためには、Oracle9iAS 側の設定が必要です。詳細は、OTN-J で公開中の『DCM サーブレットを使用した Oracle9i JDeveloper 9.0.3 から Oracle9iAS 9.0.2 へのデプロ イ』を参照してください。また、Oracle9iAS R9.0.2(OC4J R9.0.2)は、JSP 1.2 に 完全には対応していないため、このチュートリアルで作成した JSP は動作しませ んのでご注意ください。
サンプル・コード
サンプル・コード
サンプル・コード
サンプル・コード
HelloTag.java package tutorial.taglib; import javax.servlet.jsp.tagext.*; import javax.servlet.jsp.*; import java.io.PrintWriter;public class HelloTag extends TagSupport {
/*
tag attribute: userName */
private String userName = "";
/**
* Method called at start of tag. * @return SKIP_BODY
*/
public int doStartTag() throws JspException {
try {
JspWriter out = pageContext.getOut();
out.println("こんにちは、こんにちは、こんにちは、こんにちは、" + userName + "さんさんさんさん"); } catch(Exception e) { e.printStackTrace(); } return SKIP_BODY; } /**
* Method is invoked after every body evaluation to control whether the body will be reevaluated or not.
* @return SKIP_BODY */
public int doAfterBody() throws JspException {
return SKIP_BODY; }
/**
* Method called at end of tag. * @return EVAL_PAGE
*/
public int doEndTag() {
return EVAL_PAGE; }
public void setUserName(String value) {
userName = value; }
public String getUserName() { return userName; } } emp.jsp
<%@ taglib uri="tutorialTagLib" prefix="tutorial" %>
<%@ taglib uri="http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/sqltaglib.tld" prefix="database" %>
<%@ page contentType="text/html;charset=Shift_JIS"%> <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title> Hello World </title> </head> <body> <h2> 現在の時刻: </h2> <p> <%= new java.util.Date() %></p>
<tutorial:hello userName="JDev Team" />
<database:dbOpen connId="conn" dataSource="jdbc/ScottDS"> </database:dbOpen>
<database:dbQuery connId="conn" output="HTML"> SELECT * FROM EMP
</database:dbQuery>
<database:dbClose connId="conn" /> </body>
付録
付録
付録
付録 A:
JDeveloper の環境設定
の環境設定
の環境設定
の環境設定
JDeveloper の環境設定は、「ツール」→「設定」で起動される「設定」ダイアログを使用 します。このチュートリアルの手順に従って、JDeveloper で Servlet を作成、実行するため に、JDeveloper に組み込まれている OC4J(埋め込み OC4J サーバー)および Servlet にアク セスする Web ブラウザの設定が必要な場合があります。埋め込み
埋め込み
埋め込み
埋め込み OC4J サーバーの設定
サーバーの設定
サーバーの設定
サーバーの設定
「設定」ダイアログの「埋め込み OC4J」ページでは、OC4J が使用するネット ワークポートの指定と OC4J に Web ブラウザからアクセスする場合のホスト名ま たは IP アドレスなどを指定できます。また、埋め込み OC4J として OC4J R9.0.3 以 外のバージョンを使用する必要がある場合は、「実行/デバッグ用の OC4J インスト ールを選択」で OC4J がインストールされているディレクトリを指定してください。 このフィールドが空欄の場合は、<JDEV_HOME>¥j2ee¥home にインストールさ れている OC4J R9.0.3 が使用されます。 図 図 図 図 44:::: 「設定」ダイアログ−「埋め込み「設定」ダイアログ−「埋め込み「設定」ダイアログ−「埋め込み OC4J」ページ「設定」ダイアログ−「埋め込み 」ページ」ページ」ページWeb ブラウザの設定
ブラウザの設定
ブラウザの設定
ブラウザの設定
「設定」ダイアログの「Web ブラウザ/プロキシ」ページでは、JDeveloper で Servlet や JSP を実行/デバッグする時に使用する Web ブラウザの設定を行います。「ブラ
ウザのコマンドライン」が空欄の場合、通常使用するように登録されている Web ブラウザが使用されます。Servlet や JSP を実行またはデバッグした時に自動的に ブラウザが起動されない場合は、「ブラウザのコマンドライン」で起動する Web ブ ラウザの実行ファイルの位置を指定してください。 図 図図 図 45:::: 「設定」ダイアログ−「「設定」ダイアログ−「「設定」ダイアログ−「「設定」ダイアログ−「Web ブラウザブラウザブラウザブラウザ/プロキシ」ページプロキシ」ページプロキシ」ページプロキシ」ページ
付録
付録
付録
付録 B:
JDeveloper と外部ツールの連携
と外部ツールの連携
と外部ツールの連携
と外部ツールの連携
JDeveloper では、「外部ツール」ダイアログを使用して、JDeveloper から外部のツールを 起動することが可能です。 例えば、HTML や JSP のソース・ファイルをナビゲータで右クリックしたときのポップ アップ・メニューにメモ帳で開くメニューを追加するためには、次のように設定します。 1. メニューバーから、「ツール」→「外部ツール」を選択し、「外部ツール」ダイアロ グを起動し、「追加」をクリックします。 図 図図 図 46:::: 「外部ツール」ダイアログ「外部ツール」ダイアログ「外部ツール」ダイアログ「外部ツール」ダイアログ 2. ダイアログ右側の「表示」タブ・ページがアクティブになるので、メニュー・キャ プション(メニュー項目として表示されるテキスト−例: メモ帳)を指定します。図 図 図 図 47:::: 「外部ツール」ダイアログ−「表示」タ「外部ツール」ダイアログ−「表示」タ「外部ツール」ダイアログ−「表示」タ「外部ツール」ダイアログ−「表示」タブ・ページブ・ページブ・ページブ・ページ 3. 「詳細」タブ・ページでは、「実行可能ファイル」に起動するツール(メモ帳)の実 行ファイルのパスを入力します。 図 図 図 図 48:::: 「外部ツール」ダイアログ−「詳細」タブ・ページ「外部ツール」ダイアログ−「詳細」タブ・ページ「外部ツール」ダイアログ−「詳細」タブ・ページ「外部ツール」ダイアログ−「詳細」タブ・ページ 4. 同じく「詳細」タブ・ページでツールを起動する際に指定する引数の設定を行いま す。ナビゲータで選択したファイルをメモ帳で開くような場合は、「引数」リストの 下にある「追加」をクリックし、起動された「ツール引数」ダイアログから「ファ イル名」を選択してから「OK」をクリックします。