У меня есть веб-приложение, работающее на Tomcat, и после еженедельного обслуживания оно неожиданно перестало работать. Глядя в журналах, я получаю следующее сообщение об ошибке:java.net.BindException: порт RMI уже используется Ошибка
2015-06-22 10:10:03,351 [RMIStartThread] ERROR com.corda.ccutil - Found an existing RMI
registry on 10.0.5.143 with port: 2021
java.net.BindException: RMI port already in use
at com.corda.ccutil.te.a(te.java:43)
at com.corda.cvserver.kb.run(kb.java:50)
at java.lang.Thread.run(Unknown Source)
Как указано в некоторых из других блогов, где люди имели эту проблему (Getting Port already in use: 6969; nested exception on tomcat while start up?), я посмотрел, что использует порт 2021 с помощью netstat -anob
команды. Вот результат:
Использование Tasklist чтобы затем найти процесс с PID 2700, я получаю выход:
Если его кот, используя порт 2021, почему существует проблема тогда? Я попытался перезапустить сервер, остановить и запустить tomcat и веб-приложение. Приложение, похоже, работает нормально локально, но не открывается ни в каком другом удаленном месте.
Есть ли у кого-нибудь идеи о том, что могло пойти не так?
Спасибо!
Привет, я убил процесс и перезапустил сервер, но я все еще получаю ту же ошибку :( – user2673722
Убедитесь, что процесс еще не запущен. Остановите свой сервер и выполните netstat, чтобы узнать, всегда ли порт используется. если это так убить процесс и проверить после повторного использования netstat. – jMounir
Я уже проверил это. Как только я закрываю Tomcat, порт свободен, и ничего больше не видно на порту. Также работает внутренняя ссылка на веб-приложение Это значит, что приложение не развертывается на порту 2021 из-за порта RMI или что неправильное отображение между внутренней и внешней ссылкой – user2673722