Interstage Application Server リファレンスマニュアル(API編)
目次 索引 前ページ次ページ

第7章 Interstage運用API> 7.3 運用操作関数

7.3.1 ISOPoperate()

機能説明

 本関数は、以下の機能を提供します。

ワークユニット起動

 指定したワークユニットを起動します。

 本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris OE版Interstage Enterprise Editionで、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
− Windows(R)版の場合
− pktvl に ISOP_003以下を指定した場合
− Solaris OE版Interstage Standard Editionの場合
− Linux版の場合

ワークユニット停止

 指定したワークユニットを停止します。

 本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris OE版Interstage Enterprise Editionで、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
− Windows(R)版の場合
− pktvl に ISOP_003以下を指定した場合
− Solaris OE版Interstage Standard Editionの場合
− Linux版の場合

オブジェクト閉塞

 指定したオブジェクトを閉塞します。

 この機能は、Interstage Application Server Enterprise Editionのみ有効な機能です。

 本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris OE版Interstage Enterprise Editionで、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
− Windows(R)版の場合
− pktvl に ISOP_003以下を指定した場合
− Solaris OE版Interstage Standard Editionの場合
− Linux版の場合

オブジェクト閉塞解除

 指定したオブジェクトの閉塞を解除します。

 この機能は、Interstage Application Server Enterprise Editionのみ有効な機能です。

 本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris OE版Interstage Enterprise Editionで、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
− Windows(R)版の場合
− pktvl に ISOP_003以下を指定した場合
− Solaris OE版Interstage Standard Editionの場合
− Linux版の場合

サーブレット・コンテナ起動

 指定したサーブレット・コンテナを起動します。本APIを使用する前に必ずサーブレットAPI環境の初期化を行ってください。

注1) Solaris OE版Interstage Enterprise Editionの場合は、サーブレットAPI環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
− Windows(R)版の場合
− Solaris OE版Interstage Standard Editionの場合
− Linux版の場合

サーブレット・コンテナ停止

 指定したサーブレット・コンテナを停止します。本APIを使用する前に必ずサーブレットAPI環境の初期化を行ってください。

注1) Solaris OE版Interstage Enterprise Editionの場合は、サーブレットAPI環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
− Windows(R)版の場合
− Solaris OE版Interstage Standard Editionの場合
− Linux版の場合

形式

 #include <ISOP.h>
 void ISOPoperate (char *reqparm)

 引数reqparmは、パラメタ構造体を指すポインタです。パラメタ構造体は使用する機能ごとに、指定された形式の構造体を使用者が獲得し、設定します。
 パラメタ構造体へのポインタをchar*型にキャストして、引数としてください。
 獲得した領域は、あらかじめゼロクリアしてください。

1)ワークユニット起動

パラメタ構造体

 下記のISOP_OPEWU構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_opewu_t {                      /* パラメタ設定用制御表定義  */
   ISOP_CTRL       opctrl;                       /* 基本情報                  */
   char            wuname[ISOP_DEFWUNMMAX];      /* ワークユニット名          */
   long            ctrlopt;                      /* 停止オプション            */
   char            rsv[64];                      /* リザーブ                  */
} ISOP_OPEWU;

設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RSTRWU

要求コード:
ワークユニット起動

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

wuname

char[]

ワークユニット名

ワークユニット名

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl
(注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result
(注2)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

注1)
 APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
 異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_EAPMERROR

4003

何らかの原因でワークユニットの起動に失敗しました。コンソールに異常内容をしめすメッセージが出力されます。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOWU

4103

指定されたワークユニットは存在しません。または、ワークユニットの形式に誤りがあります。

ISOP_EWUDEF

4104

指定されたワークユニットの定義に誤りがあります。


ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。(注)

ISOP_ESTRWU

4206

指定されたワークユニットはすでに起動/活性化されています。

ISOP_ECONDWU

4210

指定されたワークユニットは操作できない状態です。

 注)Enterprise Editionで、pktvlがISOP_005以降の場合に有効。

2)ワークユニット停止

パラメタ構造体

 ワークユニット起動時に獲得、設定した制御表を、パラメタとして指定してください。

設定情報

・ワークユニット起動時の制御表が存在する場合

メンバ名

設定値

意味

opctrl.request

long

ISOP_RSTPWU

要求コード:
ワークユニット停止

ctrlopt

long

ISOP_RSTPWU_NORMAL

停止オプション:通常停止

ISOP_RSTPWU_CANCEL

停止オプション:強制停止

ISOP_RSTPWU_SYNC

同期停止 (注1)

注1)
CORBAワークユニット、EJBアプリケーションのみ同期停止を指定できます。

・ワークユニット起動時の制御表が存在しない場合

メンバ名

設定値

意味

opctrl.request

long

ISOP_RSTPWU

要求コード:
ワークユニット停止

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

wuname

char[]

ワークユニット名

ワークユニット名

ctrlopt

long

ISOP_RSTPWU_NORMAL

停止オプション:通常停止

ISOP_RSTPWU_CANCEL

停止オプション:強制停止

ISOP_RSTPWU_SYNC

同期停止

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl (注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result
(注2)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

注1)
 APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
 異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EINVAL_CTRL

2102

停止オプションに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPABNDWU

4004

ワークユニットの停止処理中にワークユニットが異常終了しました。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOWU

4103

指定されたワークユニットは存在しません。または、ワークユニットの形式に誤りがあります。


ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。(注)


ISOP_EDIFFUSER

4201

ワークユニット起動ユーザと異なったユーザが指定されています。

ISOP_ESTPWU

4204

指定されたワークユニットは起動されていません。

ISOP_EREQREJECT

4205

キューにデータが存在するためワークユニットは停止できない状態です。

ISOP_ECONDWU

4210

指定されたワークユニットは操作できない状態です。

 注)Enterprise Editionで、pktvlがISOP_005以降の場合に有効。

3)オブジェクト閉塞(Enterprise Editionのみ有効)

パラメタ構造体

 下記のISOP_OPEOBJ構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_opeobj_t {     /* パラメタ設定用制御表定義  */
  ISOP_CTRL   opctrl;             /* 基本情報 */
  char        objname[256];       /* オブジェクト名(インプリメンテーショリポジトリID) */
  char        objname2[256];      /* インプリメンテーションリポジトリID内オブジェクト名 */
  char        rsv[256];           /* リザーブ */
} ISOP_OPEOBJ;

設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RINHOBJ

要求コード:
オブジェクト閉塞

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

objname

char*

オブジェクト名

オブジェクト名 (注1) (注2)

objname2

char*

インプリメンテーションリポジトリID内オブジェクト名

インプリメンテーションリポジトリID内オブジェクト名 (注2)

注1)
objnameのみを設定した場合、オブジェクトの閉塞が行われます。

注2)
objname,objname2を設定した場合、インプリメンテーションリポジトリID内オブジェクトのキュー閉塞が行われます。

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl (注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result (注2)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

注1)
 APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
 異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOOBJ

4105

指定されたオブジェクトは存在しません。
または、オブジェクトの形式に誤りがあります。

ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。


ISOP_EDIFFUSER

4201

ワークユニット起動ユーザと異なったユーザが指定されています。

ISOP_ESTPWU

4204

指定されたオブジェクトが属するワークユニットが起動されていません。

ISOP_EINHOBJ

4207

指定されたオブジェクトはすでに閉塞されています。

ISOP_EKINDOBJ

4209

指定されたオブジェクトの種別では閉塞できません。

ISOP_ECONDWU

4210

指定されたオブジェクトが属するワークユニットが操作できる状態ではありません。

ISOP_ENOTSUPPORT
(注1)

4401

使用できない機能を使おうとしています。

注1)
 
Interstage Application Server Standard Editionの場合に復帰します。

4)オブジェクト閉塞解除(Enterprise Editionのみ有効)

パラメタ構造体

 下記のISOP_OPEOBJ構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_opeobj_t {                      /* パラメタ設定用制御表定義  */
   ISOP_CTRL       opctrl;                       /* 基本情報                  */
   char            objname[ISOP_DEFOBJNMMAX];    /* オブジェクト名            */
   char            objname2[256];      /* インプリメンテーションリポジトリID内オブジェクト名 */
   char            rsv[256];                     /* リザーブ                  */
} ISOP_OPEOBJ;

設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RPMTOBJ

要求コード:
オブジェクト閉塞解除

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

objname

char*

オブジェクト名

オブジェクト名 (注1) (注2)

objname2

char*

インプリメンテーションリポジトリID内オブジェクト名

インプリメンテーションリポジトリID内オブジェクト名 (注2)

注1)
objnameのみを設定した場合、オブジェクトの閉塞解除が行われます。

注2)
objname,objname2を設定した場合、インプリメンテーションリポジトリID内オブジェクトのキュー閉塞解除が行われます。

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl(注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result(注2)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

注1)
 APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
 異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOOBJ

4105

指定されたオブジェクトは存在しません。
または、オブジェクトの形式に誤りがあります。


ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。


ISOP_EDIFFUSER

4201

ワークユニット起動ユーザと異なったユーザが指定されています。

ISOP_ESTPWU

4204

指定されたオブジェクトが属するワークユニットが起動されていません。

ISOP_EINHOBJ

4208

指定されたオブジェクトは閉塞されていません。

ISOP_EKINDOBJ

4209

指定されたオブジェクトの種別では閉塞解除できません。

ISOP_ECONDWU

4210

指定されたオブジェクトが属するワークユニットが操作できる状態ではありません。

ISOP_ENOTSUPPORT
(注1)

4401

使用できない機能を使おうとしています。

注1)
 
Interstage Application Server Standard Editionの場合に復帰します。

5)サーブレット・コンテナ起動

パラメタ構造体

下記のISOP_OPEJSC構造体を獲得し、パラメタとして指定します。

typedef struct _isop_opejsc_t {     /* パラメタ設定用制御表定義 */
  ISOP_CTRL       opctrl;         /* 基本情報 */
  char            name[36];       /* サーブレット・コンテナ名 */
  char            rsv[256];       /* リザーブ */
} ISOP_OPEJSC;

設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RSTRJSC

サーブレット・コンテナ起動

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

name

char*

サーブレット・コンテナ名

サーブレット・コンテナ名 (最大32バイト)

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result

Long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

Long

原因コード

エラーの詳細情報

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります

ISOP_EAGAIN

3001

システム資源不足が発生しました
しばらくしてから再度実行してください

ISOP_ENOMEM

3002

メモリ不足が発生しました

ISOP_ESYSERR

4001

システムエラー

ISOP_ESTPIS

4102

Interstageが起動されていません


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました (注)

ISOP_EJSNOCONT

4115

指定されたサーブレット・コンテナは存在しません
または、サーブレット・コンテナ名の指定内容が不当です

ISOP_ESTPJS

4116

操作対象システムのServletサービスが起動されていません

ISOP_EJSSTRCONT

4117

指定されたサーブレット・コンテナはすでに起動されています

 注)Enterprise Editionで、pktvlがISOP_005以降の場合に有効。

6)サーブレット・コンテナ停止

パラメタ構造体

下記のISOP_OPEJSC構造体を獲得し、パラメタとして指定します。

typedef struct _isop_opejsc_t {     /* パラメタ設定用制御表定義 */
  ISOP_CTRL       opctrl;         /* 基本情報 */
  char            name[36];       /* サーブレット・コンテナ名 */
  char            rsv[256];       /* リザーブ */
} ISOP_OPEJSC;

設定情報

メンバ名

設定値

意味

opctrl.request

Long

ISOP_RSTPJSC

サーブレット・コンテナ停止

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

name

char*

サーブレット・コンテナ名

サーブレット・コンテナ名 (最大32バイト)

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result

long

0

正常終了

-1

異常終了
エラーの詳細はdetailを参照

opctrl.detail

long

原因コード

エラーの詳細情報

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります

ISOP_EAGAIN

3001

システム資源不足が発生しました
しばらくしてから再度実行してください

ISOP_ENOMEM

3002

メモリ不足が発生しました

ISOP_ESYSERR

4001

システムエラー

ISOP_ESTPIS

4102

Interstageが起動されていません


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました(注)

ISOP_EJSNOCONT

4113

指定されたサーブレット・コンテナは存在しません
または、サーブレット・コンテナ名の指定内容が不当です

ISOP_ESTPJS

4116

操作対象システムのServletサービスが起動されていません

ISOP_EJSSTPCONT

4118

指定されたサーブレット・コンテナは起動されていません

 注)Enterprise Editionで、pktvlがISOP_005以降の場合に有効。

注意事項

 本関数を使用するには、isstartコマンドを使用し、Interstageの起動を行う必要があります。各コンポーネントから提供されている起動コマンドは使用しないでください。

 なお、クラスタ構成で運用する場合には、isstartコマンドを使用する必要はありません。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005