サンプル集  >  other  >  tomcat起動時アクセス拒否エラー
tomcat起動時アクセス拒否エラー
2013/07/22

PCを再起動したらTomcatが「アクセスが拒否されました」というエラーを出しました。



◆環境
OS Windows 7 Professional Service Pack 1 (64bit)
tomcat 5.5

メッセージの通り、8080ポートが既に使われているようです。 netstatコマンドで状況を確かめます。

>netstat -oan

アクティブな接続

  プロトコル  ローカル アドレス  外部アドレス  状態       PID
  TCP         0.0.0.0:135        0.0.0.0:0     LISTENING  816
  TCP         0.0.0.0:445        0.0.0.0:0     LISTENING  4
  TCP         0.0.0.0:1521       0.0.0.0:0     LISTENING  1352
  TCP         0.0.0.0:3306       0.0.0.0:0     LISTENING  1628
  TCP         0.0.0.0:8080       0.0.0.0:0     LISTENING  1352
  TCP         0.0.0.0:17500      0.0.0.0:0     LISTENING  2816
  TCP         0.0.0.0:49152      0.0.0.0:0     LISTENING  552
:

PID:1352が8080を使ってますね。 tasklistで1352のプログラムを特定します。

ちなみに1352のプログラムは1521も使ってますね。

>tasklist

イメージ名             PID セッション名  セッション# メモリ使用量
==================== ===== ============= =========== ============
System Idle Process      0 Services                0         24 K
System                   4 Services                0      3,104 K
smss.exe               388 Services                0      1,424 K
:
TNSLSNR.EXE           1352 Services                0     41,300 K
:

TNSLSNR.EXEが8080を使っているという事が分かりました。

Oracle Database XEのhttpリスナーのポートが8080になっていたためtomcatのデフォルトポートとぶつかっている事が原因でした。 8080はtomcatで使いたいのでOracleの方のポート番号を変更します。 ポート番号を変えるにはSQL*Plusにsystemでログインしコマンドを実行します。

今回は28080にポートを変更してみました。

SQL> exec dbms_xdb.sethttpport(28080)

PL/SQLプロシージャが正常に完了しました。

これでtomcat起動時のBindエラーが出なくなりました。

参考

winsock2 I connectエラー処理追加
    netstatで待ち受けIP、ポートを確認する例です。

▲ PageTop  ■ Home


Copyright (C) 2013 ymlib.com