一回も披露したことのない豆知識

WebOTXのdeployコマンドをバッチで実行しようとしています。

以下のコマンドに続けて、エラー処理を記述したいのですが、
dosコマンドのerrorlevelではエラーを取得できません。

cmd /c otxadmin deploy --user *** --password *** --force=true WARファイル

WebOTXコマンドのエラーを拾う方法を教えてください。

よろしくお願いします。

A 回答 (2件)

#1です。


cmd /c otxadmin deploy --user *** --password *** --force=true WARファイル >log.txt
または
cmd /c otxadmin deploy --user *** --password *** --force=true WARファイル 2>log.txt
ではダメですか。
    • good
    • 0
この回答へのお礼

お礼・回答遅くなり申し訳ありません。

上記のコマンドで取得はできるようですが、DOSコマンドのerrorlevelで取得できる方法を発見しました。以下の通りです。

call otxadmin deploy --user *** --password *** --force=true WARファイル

otxadminはバッチファイルでしたので、バッチファイルを呼び出し、その中でエラーが発生するする場合、callだと取得できるようです。
javaでいう、呼び出したメッソド内でexceptionが発生し、呼び出し元のcatchでexceptionを拾ったようなものでしょうか。

いろいろとお手数おかけしました。
ありがとうございました。

お礼日時:2010/12/15 23:01

cmd /cでも%errorlevel%には値が戻ります(一応確認してみました)。


otxadminが値を返していないと考えられます。

エラーコードは当てになりそうに無いので別の方法を考えましょう。勝手に考えて見ます。


(1)案
エラーコードではなくで何かメッセージは出ていないのでしょうか?。otxadminはUNIX版もあるようなので、正常であればエラーメッセージが出ず、エラーのときだけメッセージが出る仕様ではないのでしょうか?。

(2)案
deployされた結果が分かるのであればそれを確認するのはいかがでしょう。先に出力先を削除しておいてdeployするのはどうでしょうか?。

ご検討ください。
    • good
    • 0
この回答へのお礼

引き続き回答いただきありがとうございます。

また、案を出していただきありがとうございました。

(1)案に関してですが、
otxadminのエラーメッセージはコマンドプロンプト上には表示されますが、
それもまた取得方法が分かりません。
イベントビューアにエラーが出ていればDOSコマンドで拾えるかと思いましたが、
出力されておらず・・・

(2)案に関してですが、
deployされた結果はファイルの日付が更新されていれば分かるのでしょうが、
それはそれでどのファイルを対象とするかなど、いろいろ問題が出てきてしまいます。

せっかく出していただいた案なのですが、
もう少し対応方法を検討してみようと思います。
何か良い案が出れば、こちらに更新させていただきます。

お礼日時:2010/12/13 21:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!