- - PR -
別サーバーの外部コマンド実行方法
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-06-19 01:48
お世話になっております。
JAVA経験半年程の初心者プログラマーです。 表題の件、 APサーバー(WebLogic)にデプロイされているJAVAアプリから、 別筐体(DBサーバー)の外部コマンドを実行できるでしょうか? 外部コマンドの実行方法は調べて分かったのですが、 アプリと同サーバーでない場合、どのように実装すれば良いか分かりません。 具体的には、APサーバー上のアプリから、 DBサーバー上でファイルのコピー(cpコマンド)と、 パーミッション変更(chmod)を実行したいです。 データソースからコネクションは取得できますが、 それを利用してできるものでしょうか? もしくは、ソケットや、RMIといった技術が必要でしょうか? ヒントでも構いませんのでどなたかご教示下さい。 |
|
投稿日時: 2007-06-19 06:52
RPCを利用すれば何とかなるような気がします。
|
|
投稿日時: 2007-06-19 09:49
可能な技術としてRMIやらTELNETやら色々あると思いますが、
DBサーバにもTomcatを入れたり、Apache/Perl/PHP辺りを組み合わせて、 HTTP経由で実行するっていうのがシンプルだと思います。 |
|
投稿日時: 2007-06-19 10:22
本件のような事例だとTELNETでコマンドを叩くとかが楽なのでしょうかね。
叩くのがそもそも外部コマンドらしいですし。 枯れた技術を使うほうが楽なのでは。 |
|
投稿日時: 2007-06-19 11:25
Ant の telnet タスクを利用する方法はいかがでしょう。
http://www.jajakarta.org/ant/ant-1.5/docs/ant-1.5/j/docs/manual/OptionalTasks/telnet.html |
|
投稿日時: 2007-06-19 23:42
marimo様、かつのり様、nagise様、インギ様
ご返信ありがとうございます。 いろいろ実現方法があるのですね。大変参考になります。 教えていただいた中で、TELNETなら私にも実装できそうです。 外部コマンドでTELNETを起動し、TELNET上でコマンドを実行するのですよね。 同様に思いついたのですが、APサーバー上からリモートシェル(rsh)を実行することでも実装できそうです。 RPC(RMI?)で実装する場合は、DBサーバーにもTomcat等をインストールし、 外部コマンドを実装したJAVAアプリをデプロイしておき、 それをAPサーバー上からRPCで呼び出す、ということですよね。 (今の自分のスキルだとちょっと難しそうです…) とりあえず今回は手軽にできそうな前者で実装しようと思います。 みなさんありがとうございました。 |
1