Application Scheduler MBean を起動するには、コマンド行を使用してください。
このタスクを実行する理由と実行時期
Application Scheduler MBean を起動するには、以下を実行します。
このタスクのためのステップ
- クラス com.ibm.wbiserver.migration.ics.Parameters にプロパティー SOAP_HOSTNAME および SOAP_PORT を設定します。
このクラスは、WAS_HOME¥lib ディレクトリーの migration-wbi-ics.jar ファイルにあります。SOAP_HOSTNAME は、Application Scheduler が実行されているホストの名前です。SOAP_PORT は
、Application Scheduler が実行されているポートです。
Parameters.instance.setProperty(Parameters.SOAP_HOSTNAME, "localhost");
Parameters.instance.setProperty(Parameters.SOAP_PORT, "8880");
注: セキュリティーがオンになっている場合、ロケーション
WAS_HOME¥profiles¥profiles¥properties¥soap.client.props にある SOAP プロパティー・ファイル内のユーザー ID およびパスワードを指定する必要があります。
このプロパティー・ファイル名は、ここに示した Parameter インスタンスに設定する必要があります。
Parameters.instance.setProperty(Parameters.SOAP_PROPERTIES,
"WAS_HOME¥profiles¥profiles¥properties¥soap.client.props";
- AppScheduler Mbean への呼び出しをインプリメントするクラス com.ibm.wbiserver.migration.ics.utils.MBeanUtil のインスタンスを作成します。
MBeanUtil のインスタンスを生成するには、正しい Mbean を
name、type、
server name および
node name に基づいて起動するコンストラクターにこの照会ストリングを渡す必要があります。
protected static final String WEBSPHERE_MB_QUERY_CONSTANT = "WebSphere:*";
protected static final String NAME_QUERY_CONSTANT = ",name=";
protected static final String WBI_SCHED_MB_NAME = "WBISchedulerMB1";
protected static final String TYPE_QUERY_CONSTANT = ",type=";
protected static final String WBI_SCHED_MB_TYPE = "WBIScheduler";
protected static final String SERVER_QUERY_CONSTANT = ",process=";
protected static final String NODE_QUERY_CONSTANT = ",node=";
serverName = “server1”;
nodeName = "myNode";
String queryString = new StringBuffer(WEBSPHERE_MB_QUERY_CONSTANT)
.append(NAME_QUERY_CONSTANT).append(WBI_SCHED_MB_NAME).append(
TYPE_QUERY_CONSTANT).append(WBI_SCHED_MB_TYPE).append(
SERVER_QUERY_CONSTANT).append(serverName).append(
NODE_QUERY_CONSTANT).append(nodeName).toString();
MBeanUtil mbs = new MBeanUtil(queryString.toString());
- MbeanUtil インスタンスの invoke() メソッドを使用し、これにメソッドの名前を渡して、Mbean メソッドを呼び出します。
例
ここに示した例は、Scheduler Mbean の
createSchedulerEntry メソッドの起動です。 最初のステップは
SchedulerEntry を作成し、
name、type、version、
transition、entry status、recurrence type、recurrence week、recurrence period、initial date、
repeat interval および
component id のような各種のパラメーターを設定することです。
try
{
//First we set up the Schedule entry
ScheduleEntry entry1 = new ScheduleEntry();
entry1.setCName("BPEWebClient_localhost_server1");
entry1.setCType("Application");
entry1.setCVersion("ver1");
entry1.setCTransition("startApplication");
entry1.setSchedulerNumberOfRepeats(3); // Fire Three times
entry1.setScheduleEntryStatus(TaskStatus.SCHEDULED);
entry1.setRType(Recurrence.MINUTES);
entry1.setRWeekNumber(-1);
entry1.setRPeriod(2);
entry1.setInitialDate(new Date(System.currentTimeMillis()+SIXTY_SECOND_OFFSET));
entry1.setRepeatInterval(entry1.getInitialDate(), entry1.getRType(),
entry1.getRWeekNumber(),
entry1.getRPeriod());
entry1.setComponentID(entry1.getCName(), entry1.getCType(), entry1.getCVersion(),
entry1.getCTransition());
その後、Mbean の createSchedulerEntry メソッドを起動します。ScheduleEntry クラスの名前と共に、スケジューラー・エントリー entry1 をパラメーターとして渡します。
そして、以下のように MBean の
createScheduleEntry メソッドを起動します。
mbs.invoke(schedulerExtMBName, "createScheduleEntry", new Object[]{entry1},
new String[]{"com.ibm.wbiserver.scheduler.common.ScheduleEntry"});
最後に、すべての Schedule エントリーを、
readAllScheduleEntries メソッドを呼び出して追加したエントリーを含めて、読み込みます。
result = mbs.invoke("readAllScheduleEntries", null, null);
}
catch (MigrationException e)
{ e.printStackTrace();
}