ヘッダーをスキップ
Oracle Containers for J2EEジョブ・スケジューラ開発者ガイド
10g(10.1.3.1.0)
B31853-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

C JSPタグ・ライブラリ・リファレンス

ジョブ・スケジューラのJSPタグ・ライブラリは、Oracle Application Server Containers for J2EEとの対話に使用されます。ジョブの追加、削除、一時停止、再開、問合せだけでなく、ブラックアウト・ウィンドウの追加、削除、問合せにも使用されます。さらに、ジョブや監査レコードの条件付き操作(ジョブのステータスに基づくコンテンツの配布など)用に多数のヘルパー・タグが提供されています。

次のトピックについて説明します。

C.1 JSPタグ・ライブラリを使用したアプリケーションの構成

次の手順に従って、JSPタグ・ライブラリを使用したWebアプリケーションを構成します。

  1. JSPタグ・ライブラリの記述子ファイルをWebアプリケーションの/WEB-INFサブディレクトリにコピーします。

  2. JSPタグ・ライブラリのJARファイルをWebアプリケーションの/WEB-INF/libサブディレクトリにコピーします。

  3. <taglib>要素を/WEB-INF/web.xmlのWebアプリケーションのデプロイ記述子に追加します。次に例を示します。

    <taglib>
    <taglib-uri>scheduler-taglib</taglib-uri>
     <taglib-location>/WEB-INF/scheduler.tld</taglib-location>
    </taglib>
    
    

JSPページでこのライブラリからタグを使用するには、各ページの上部に次のディレクティブを追加します。

<%@ taglib uri="scheduler-taglib" prefix="s" %>

sは、このライブラリからのタグのタグ名接頭辞ですが、任意の接頭辞を指定できます。

C.2 JSPタグ・ライブラリのまとめ

表C-1に、このライブラリに含まれている主要なタグをまとめます。

表C-1 JSPタグ・ライブラリのまとめ

タグ 説明

scheduler


すべてのジョブ・スケジューラ・タグのトップレベル・タグ。

addJob


新しいジョブを追加します。

removeJob


既存のジョブを削除します。

pauseJob


ジョブを一時停止します。

resumeJob


一時停止したジョブを再開します。

cancelJob


ジョブを取り消します。

addBlackoutWindow


新しいブラックアウト・ウィンドウを追加します。

removeBlackoutWindow


既存のブラックアウト・ウィンドウを削除します。


C.3 JSPタグ・ライブラリ・リファレンス

ここでは、C.2項でリストした各タグについて詳しく説明します。

C.3.1 scheduler

schedulerタグは、ジョブ・スケジューラと対話するための暗黙的なEJBコンテキストを提供します。コンテキストが暗黙的なので、このタグは、このライブラリが提供する他のすべてのタグの親である必要があります。

表C-2に、schedulerタグでサポートされている属性を示します。

表C-2 schedulerタグの属性

属性 必須 説明

id

ジョブ・スケジューラへのアクセスに使用するジョブ・スケジューラEJBのインスタンス名。

name

このタグのボディの全操作を処理するジョブ・スケジューラEJBのJNDI名。

scope

×

暗黙的なEJBコンテキストの有効範囲脚注1。有効な値は、pagerequestsessionapplicationです。デフォルトはpageです。


脚注1 これは、JSPのPAGECONTEXT有効範囲と同じです。

例:

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler" scope="application">
.
.
.
</s:scheduler>

C.3.2 addJob

addJobタグは、ジョブ・スケジューラに新しいジョブを追加します。このタグは、schedulerタグ内で使用する必要があります。

表C-3に、addJobタグでサポートされているヘルパー・タグを示します。

表C-3 addJobタグのヘルパー・タグ

ヘルパー・タグ 必須 説明

className


ジョブのクラス名

description


×

ジョブの説明

schedule


×

ジョブのスケジュール(トリガーにタイムアウトを送信する頻度を指定)

trigger


×

ジョブのトリガー(ジョブを実行する前に満たす必要がある条件を指定)

retry


×

ジョブの再試行期間

logLevel


×

ジョブのログ・レベル


C.3.2.1 className

新しいジョブの追加時にクラス名を指定するには、このヘルパー・タグを使用します。このタグは、addJobタグ内で使用する必要があります。

例:

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addJob>
      <s:className>TestJobImpl</s:className>
   </s:addJob>
</s:scheduler>

C.3.2.2 description

新しいジョブの追加時にジョブの説明を指定するには、このヘルパー・タグを使用します。このタグは、addJobタグ内で使用する必要があります。

例:

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addJob>
      <s:className>TestJobImpl</s:className>
      <s:description>Example job description</s:description>
   </s:addJob>
</s:scheduler>

C.3.2.3 schedule

ジョブまたはブラックアウト・ウィンドウのスケジュールを指定するには、このヘルパー・タグを使用します。このタグは、addJobタグまたはaddBlackoutWindowタグ内で使用する必要があります。

表C-4に、scheduleヘルパー・タグでサポートされているヘルパー・タグを示します。

表C-4 scheduleヘルパー・タグのヘルパー・タグ

ヘルパー・タグ 必須 説明

duration


×

スケジュールの初期有効期限までの期間

interval


×

スケジュールの繰返し間隔

threshold


×

ジョブの実行しきい値(addJobタグと一緒に使用する場合のみ適用可)


C.3.2.3.1 duration

スケジュールの初期有効期限までの期間を指定するには、このヘルパー・タグを使用します。このタグは、schedulerタグ内で使用する必要があります。このタグのボディでは期間を指定します。期間は、任意の数の単位と関連する値、または特定の日時で指定します。

次に期間の例を示します。

  • 1週間

  • 1か月、5日

  • 2005年3月15日

  • 2004年1月5日午後4時(太平洋標準時)

表C-5に、durationヘルパー・タグでサポートされているヘルパー・タグを示します。

表C-5 durationヘルパー・タグのヘルパー・タグ

ヘルパー・タグ 必須 説明

date


×

初期有効期限の日付。このタグは、timeタグと組み合せて使用できます。

time


×

初期有効期限の時間。このタグは、dateタグと組み合せて使用できます。

years


×

ジョブの発行時間を基準とする年単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

months


×

ジョブの発行時間を基準とする月単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

weeks


×

ジョブの発行時間を基準とする週単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

days


×

ジョブの発行時間を基準とする日単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

hours


×

ジョブの発行時間を基準とする時間単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

minutes


×

ジョブの発行時間を基準とする分単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

seconds


×

ジョブの発行時間を基準とする秒単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。

milliseconds


×

ジョブの発行時間を基準とするミリ秒単位で表される有効期限。このタグは、他のヘルパー・タグと組み合せて使用できます。


表C-5で説明したヘルパー・タグの詳細な説明と例は、次の項を参照してください。


注意:

繰り返しを避けるために、最初のいくつかのタグについては完全なコード例を示します。この項の残りのタグについては、部分的なコード例を示します。

date

ジョブの初期有効期限の正確な日付を指定するには、このヘルパー・タグを使用します。このタグは、durationタグ内で使用する必要があります。日付式の書式は、java.text.DateFormatクラスが提供する日付解析ルーチンに準拠している必要があります。このタグをtimeタグと一緒に使用しない場合、durationタグで囲まれたボディには、デフォルトの12:00:00 a.mが使用されます。

スケジュールの継続期間を2003年10月27日の午前0時(太平洋標準時)に設定するには、次のコードを使用します。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler"> <s:addJob> <s:className>TestJobImpl</s:className> <s:schedule> <s:duration> <s:date>October 27, 2003</s:date> </s:duration> </s:schedule> </s:addJob></s:scheduler>

time

ジョブの初期有効期限の正確な時間を指定するには、このヘルパー・タグを使用します。このタグは、durationタグ内で使用する必要があります。時間式の書式は、java.text.TimeFormatクラスが提供する時間解析ルーチンに準拠している必要があります。このタグをdateタグと一緒に使用しない場合、durationタグで囲まれたボディでは、デフォルトでジョブの発行日付が使用されます。

スケジュールの期間を2003年10月27日の午後4時30分(太平洋標準時)に設定するには、次のコードを使用します。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler"> <s:addJob> <s:className>TestJobImpl</s:className> <s:schedule> <s:duration> <s:date>October 27, 2003</s:date> <s:time>16:30:00 PST</s:time> </s:duration> </s:schedule> </s:addJob></s:scheduler>

years

有効期限までの年数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(monthsweeksdayshoursまたはminutes)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。期間または間隔がうるう日に発生する場合、有効期限はその月の最終日に丸められます。たとえば、2月29日は次の年の2月28日に丸められます。

スケジュールの期間を発行時間から1年に設定するには、次のコードを使用します。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler"> <s:addJob> <s:className>TestJobImpl</s:className> <s:schedule> <s:duration> <s:years>1</s:years> </s:duration> </s:schedule> </s:addJob></s:scheduler>

次の例は、スケジュールの間隔を1年に設定する方法を示しています。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler"> <s:addJob> <s:className>TestJobImpl</s:className> <s:schedule> <s:interval> <s:years>1</s:years> </s:interval> </s:schedule> </s:addJob></s:scheduler>

months

有効期限までの月数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsweeksdayshoursまたはminutes)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。期間または間隔が月末に発生する場合、間隔が月末に発生するように丸められる可能性があります。たとえば、1月31日は次の月の2月28日に丸められます。

スケジュールの有効期限が1か月後に切れるように設定するには、次のコードを使用します。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler"> <s:addJob> <s:className>TestJobImpl</s:className> <s:schedule> <s:duration> <s:months>1</s:months> </s:duration> </s:schedule> </s:addJob></s:scheduler>

次の例は、スケジュールを3か月ごとに繰り返すように設定する方法を示しています。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler"> <s:addJob> <s:className>TestJobImpl</s:className> <s:schedule> <s:interval> <s:months>3</s:months> </s:interval> </s:schedule> </s:addJob></s:scheduler>

weeks

有効期限までの週数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsmonthsdayshoursminutessecondsまたはmilliseconds)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。

スケジュールの有効期限が1週間後に切れるように設定するには、次のコードを使用します。

... <s:duration> <s:weeks>1</s:weeks> </s:duration>...

days

有効期限までの日数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsmonthsweekshoursminutessecondsまたはmilliseconds)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。

スケジュールが14日ごとに繰り返されるように設定するには、次のコードを使用します。

... <s:interval> <s:days>14</s:days> </s:interval>...

hours

有効期限までの時間数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsmonthsweekshoursminutessecondsまたはmilliseconds)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。

スケジュールの有効期限が48時間後に切れるように設定するには、次のコードを使用します。

... <s:duration> <s:hours>48</s:hours> </s:duration>...

minutes

有効期限までの分数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsmonthsweekshoursdayssecondsまたはmilliseconds)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。

スケジュールが720分ごとに繰り返されるように設定するには、次のコードを使用します。

... <s:interval> <s:minutes>720</s:minutes> </s:interval>...

seconds

有効期限までの秒数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsmonthsweekshoursdaysminutesまたはmilliseconds)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。

スケジュールの有効期限が86,400秒(24時間)後に切れるように設定するには、次のコードを使用します。

... <s:duration> <s:seconds>86400</s:seconds> </s:duration>...

milliseconds

有効期限までのミリ秒数を指定するには、この単位タグをdurationタグまたはintervalタグと一緒に使用します。このタグは、他の単位タグ(yearsmonthsweekshoursdaysminutesまたはseconds)と一緒に使用できます。タグのボディはゼロ以外の正の整数である必要があります。

スケジュールが43,200,000ミリ秒ごとに繰り返されるように設定するには、次のコードを使用します。

... <s:interval> <s:milliseconds>43200000</s:milliseconds> </s:interval>...

C.3.2.3.2 interval

スケジュールの間隔を指定するには、このヘルパー・タグを使用します。このタグは、schedulerタグ内で使用する必要があります。このタグのボディでは、スケジュールの間隔を指定します。間隔は、任意の数の単位と関連する値で指定します。

次に間隔の例を示します。

  • 1週間

  • 1か月、5日

  • 1か月、6日、3時間

表C-6に、intervalヘルパー・タグでサポートされているヘルパー・タグを示します。

表C-6 intervalヘルパー・タグのヘルパー・タグ

ヘルパー・タグ 必須 説明

end

×

繰返し間隔の終了日。

years

×

ジョブの発行時間を基準とする年単位で表される繰返し間隔。このタグは、他の単位タグと組み合せて使用できます。

months

×

ジョブの発行時間を基準とする月単位で表される繰返し間隔。このタグは、他の単位タグと組み合せて使用できます。

weeks

×

ジョブの発行時間を基準とする週単位で表される繰返し間隔。このタグは、他の単位タグと組み合せて使用できます。

days

×

ジョブの発行時間を基準とする日単位で表される繰返し間隔。このタグは、他の単位タグと組み合せて使用できます。

hours

×

ジョブの発行時間を基準とする時間単位で表される繰返し間隔。このタグは、他の単位タグと組み合せて使用できます。

minutes

×

ジョブの発行時間を基準とする分単位で表される繰返し間隔。このタグは、他の単位タグと組み合せて使用できます。


繰返し間隔の終了日を指定するには、endヘルパー・タグを使用します。このタグは、intervalタグ内で使用する必要があります。間隔は、任意の数の単位と関連する値で指定します。

1か月に1度の繰返し間隔の終了日を1年後に設定するには、次のコードを使用します。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addJob>
      <s:className>TestJobImpl</s:className>
      <s:schedule>
         <s:interval>
            <s:months>1</s:months>
            <s:end>
               <s:years>1</s:years>
            </s:end>
         </s:interval>
      </s:schedule>
   </s:addJob>
</s:scheduler>

表C-7に、endヘルパー・タグでサポートされている単位タグを示します。

表C-7 endヘルパー・タグのヘルパー・タグ

ヘルパー・タグ 必須 説明

date

×

スケジュールの終了日。このタグは、timeタグと組み合せて使用できます。

time

×

スケジュールの終了時間。このタグは、dateタグと組み合せて使用できます。

years

×

ジョブの発行時間を基準とする年単位で表される終了日。このタグは、他の単位タグと組み合せて使用できます。

months

×

ジョブの発行時間を基準とする月単位で表される終了日。このタグは、他の単位タグと組み合せて使用できます。

weeks

×

ジョブの発行時間を基準とする週単位で表される終了日。このタグは、他の単位タグと組み合せて使用できます。

days

×

ジョブの発行時間を基準とする日単位で表される終了日。このタグは、他の単位タグと組み合せて使用できます。

hours

×

ジョブの発行時間を基準とする時間単位で表される終了日。このタグは、他の単位タグと組み合せて使用できます。

minutes

×

ジョブの発行時間を基準とする分単位で表される終了日。このタグは、他の単位タグと組み合せて使用できます。


これらの単位タグの使用方法は、durationヘルパー・タグと同じです。詳細は、C.3.2.3.1項を参照してください。

C.3.2.3.3 threshold

スケジュールの実行しきい値を指定するには、このヘルパー・タグを使用します。指定されたしきい値の前にスケジュールが実行されない場合、ジョブは抑止され、retryタグが指定されている場合のみ再試行されます。このタグは、schedulerタグ内で使用する必要があります。このタグのボディでは、スケジュールのしきい値を指定します。しきい値は、任意の数の単位と関連する値で指定します。

次にしきい値の例を示します。

  • 1日

  • 10時間、26分

表C-8に、thresholdタグでサポートされているヘルパー・タグを示します。

表C-8 thresholdヘルパー・タグのヘルパー・タグ

ヘルパー・タグ 必須 説明

days

×

日単位で表されるしきい値。このタグは、他の単位タグと組み合せて使用できます。

hours

×

時間単位で表されるしきい値。このタグは、他の単位タグと組み合せて使用できます。

minutes

×

分単位で表されるしきい値。このタグは、他の単位タグと組み合せて使用できます。


これらの単位タグの使用方法は、durationヘルパー・タグと同じです。詳細は、C.3.2.3.1項を参照してください。

C.3.2.4 trigger

ジョブのトリガーを指定するには、このヘルパー・タグを使用します。このタグは、addJobタグ内で使用する必要があります。ボディでは、トリガーに関連付ける式を指定します。トリガーを指定しない場合のために、関連付けられたスケジュールの有効期限に基づいて実行するためのデフォルトのトリガーが用意されています。

例:

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addJob>
      <s:className>TestJobImpl</s:className>
      <s:trigger>do_it_now</s:trigger>
   </s:addJob>
</s:scheduler>

C.3.2.5 retry

ジョブの再試行期間を指定するには、このヘルパー・タグを使用します。このタグは、addJobタグ内で使用する必要があります。このタグのボディでは、任意の数の単位と関連する値で再試行期間を指定します。

表C-9に、retryヘルパー・タグでサポートされているヘルパー・タグを示します。

表C-9 retryヘルパー・タグのヘルパー・タグ

ヘルパー・タグ 必須 説明

months

×

月単位で表される再試行期間。このタグは、他の単位タグと組み合せて使用できます。

weeks

×

週単位で表される再試行期間。このタグは、他の単位タグと組み合せて使用できます。

days

×

日単位で表される再試行期間。このタグは、他の単位タグと組み合せて使用できます。

hours

×

時間単位で表される再試行期間。このタグは、他の単位タグと組み合せて使用できます。

minutes

×

分単位で表される再試行期間。このタグは、他の単位タグと組み合せて使用できます。


ジョブが失敗したときに、1時間半で再試行する場合は、次のコードを使用します。

<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addJob>
      <s:className>TestJobImpl</s:className>
      <s:retry>
         <s:hours>1</s:hours>
         <s:minutes>30</s:minutes>
      </s:retry>
   </s:addJob>
</s:scheduler>

表C-9で説明した単位タグの使用方法は、durationヘルパー・タグと同じです。詳細は、C.3.2.3.1項を参照してください。

C.3.2.6 logLevel

ジョブのログ・レベルを指定するには、このヘルパー・タグを使用します。このタグは、addJobタグ内で使用する必要があります。このタグのボディでは、ログ・レベルを指定します。次の値がサポートされています。

  • WARNING

    ジョブで実行時例外が発生するたびにメッセージが記録されます。最も低いロギング・レベルです。

  • FINE

    ジョブが開始および終了するたびにメッセージが記録されます。

  • FINER

    ジョブに関連付けられたトリガーが評価されるたびにメッセージが記録され、評価の結果も記録されます。

  • FINEST

    ジョブの完了時にメッセージが記録され、実行に要した累積時間も記録されます。最も高いロギング・レベルです。

C.3.3 removeJob

ジョブ・スケジューラから既存のジョブを削除するには、このタグを使用します。このタグは、schedulerタグ内で使用する必要があります。削除するジョブのoracle.ias.scheduler.Job Beanのインスタンス名を指定します。

removeJobタグでは、name属性のみがサポートされています。この属性は、関連付けられたジョブへのアクセスに使用するBeanのインスタンス名を指定するときに使用するオプションの属性です。

次の例は、jobという名前のジョブを削除する方法を示しています。

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<jsp:useBean id="job" class="oracle.ias.scheduler.Job" scope="session"/>
<s:scheduler id="scheduler"  name="java:comp/env/ejb/scheduler">
   <s:removeJob name="job"/>
</s:scheduler>

C.3.4 pauseJob

ジョブ・スケジューラの既存のジョブを一時停止するには、このタグを使用します。このタグは、schedulerタグ内で使用する必要があります。一時停止するジョブのoracle.ias.scheduler.Jobインスタンス名を指定します。

pauseJobタグでは、name属性のみがサポートされています。この属性は、関連付けられたジョブへのアクセスに使用するBeanのインスタンス名を指定するときに使用するオプションの属性です。

次の例は、jobという名前のジョブを一時停止する方法を示しています。

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<jsp:useBean id="job" class="oracle.ias.scheduler.Job" scope="session"/>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:pauseJob name="job"/>
</s:scheduler>

C.3.5 resumeJob

ジョブ・スケジューラの既存のジョブを再開するには、このタグを使用します。このタグは、schedulerタグ内で使用する必要があります。再開するジョブのoracle.ias.scheduler.Jobインスタンス名を指定します。

resumeJobタグでは、name属性のみがサポートされています。この属性は、関連付けられたジョブへのアクセスに使用するBeanのインスタンス名を指定するときに使用するオプションの属性です。

次の例は、jobという名前のジョブを再開する方法を示しています。

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<jsp:useBean id="job" class="oracle.ias.scheduler.Job" scope="session"/>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:resumeJob name="job"/>
</s:scheduler>

C.3.6 cancelJob

ジョブ・スケジューラの既存のジョブを取り消すには、このタグを使用します。このタグは、schedulerタグ内で使用する必要があります。取り消すジョブのoracle.ias.scheduler.Jobインスタンス名を指定します。

cancelJobタグでは、name属性のみがサポートされています。この属性は、関連付けられたジョブへのアクセスに使用するBeanのインスタンス名を指定するときに使用するオプションの属性です。

次の例は、jobという名前のジョブを取り消す方法を示しています。

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<jsp:useBean id="job" class="oracle.ias.scheduler.Job" scope="session"/>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:cancelJob name="job"/>
</s:scheduler>

C.3.7 addBlackoutWindow

ジョブ・スケジューラにブラックアウト・ウィンドウを追加するには、このタグを使用します。このタグは、schedulerタグ内で使用する必要があります。

表C-10に、addBlackoutWindowタグでサポートされているヘルパー・タグを示します。

表C-10 addBlackoutWindowタグのヘルパー・タグ

ヘルパー・タグ 必須 説明

description

ブラックアウト・ウィンドウの説明。

duration

ブラックアウト・ウィンドウの期間。

schedule

×

ブラックアウト・ウィンドウのスケジュール。ブラックアウト・ウィンドウを有効にする時間、頻度、期間を指定します。スケジュールを指定しない場合、ブラックアウト・ウィンドウは発行時から有効になります。


次の例では、発行後から2時間有効なブラックアウト・ウィンドウを追加します。

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addBlackoutWindow>
      <s:description>two hour downtime, effective immediately</s:description>
         <s:duration>
            <s:hours>2</s:hours>
      </s:duration>
   </s:addBlackoutWindow>
</s:scheduler>

C.3.8 removeBlackoutWindow

ジョブ・スケジューラから既存のブラックアウト・ウィンドウを削除するには、このタグを使用します。このタグは、schedulerタグ内で使用する必要があります。

次の例は、ブラックアウト・ウィンドウの説明を使用して、既存のブラックアウト・ウィンドウを削除する方法を示しています(ブラックアウト・ウィンドウを作成したC.3.7項を参照)。

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:removeBlackoutWindow>two hour downtime, effective immediately</s:removeBlackoutWindow>
</s:scheduler>

C.4 JSPタグ・ライブラリの例

ここでは、この章で説明した様々なタグの包括的な使用例を示します。

例C-1は、発行されたすべてのジョブを一覧表示する方法を示しています。

例C-1 発行されたすべてのジョブの一覧表示

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<HTML>
<HEAD>
<TITLE>OracleAS Job Scheduler: all jobs</TITLE>
</HEAD>
<BODY>
<TABLE>
   <TR>
      <TH>Description</TH>
      <TH>Class Name</TH>
   </TR>
   <s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
      <s:jobIterator id="job">
         <TR>
            <TD><jsp:getProperty name="job" property="Description"/></TD>
            <TD><jsp:getProperty name="job" property="ClassName"/></TD>
         </TR>
      </s:jobIterator>
   </s:scheduler>
</TABLE>
</BODY>
</HTML>

例C-2は、ジョブ・スケジューラにジョブを発行する方法を示しています。この例では、JSPページにHTTPリクエストを送信します。リクエストが処理されると、JSPからステータス・ページにリクエストが転送されます。次の表は、リクエストのパラメータの説明です。

パラメータ 説明
description ジョブの説明
class ジョブ実装クラス名
expirationDate ジョブ・スケジュールの有効期限の日付
expirationTime ジョブ・スケジュールの指定されたexpirationDateの有効期限の時間
intervalDays ジョブ・スケジュールの繰返し間隔

例C-2 ジョブ・スケジューラへのジョブの発行

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<jsp:useBean id="params" scope="request" class="RequestParametersBean" />
<jsp:setProperty name="params" property="*" />
<HTML>
<BODY>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:addJob>
      <s:description><jsp:getProperty name="params" property="description"/></s:description>
      <s:class><jsp:getProperty name="params" property="class"/></s:className>
      <s:schedule>
         <s:duration><jsp:getProperty name="params" property="expirationDate"/></s:duration>
         <s:interval><jsp:getProperty name="params" property="expirationTime"/></s:interval>
      </s:schedule>
   </s:addJob>
</s:scheduler>
<jsp:forward url="/JobScheduled.html"/>
</BODY>
</HTML>

例C-3は、ジョブ・スケジューラからジョブを削除する方法を示します。この例では、説明とクラスに基づいてジョブを削除します。ジョブが削除されると、JSPからステータス・ページにリクエストが転送されます。

例C-3 ジョブ・スケジューラからのジョブの削除

<%@ taglib uri="scheduler-taglib" prefix="s" %>
<HTML>
<BODY>
<s:scheduler id="scheduler" name="java:comp/env/ejb/scheduler">
   <s:jobIterator id="job" desc="description of job to remove" class="test">
      <s:removeJob/>
   </s:jobIterator>
</s:scheduler>
<jsp:forward url="/JobRemoved.html"/>
</BODY>
</HTML>