Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > debug web-service


Автор: priam220 10.10.2011, 22:57
что то не могу отдебажить веб-сервис. Вроде бы все просто, судя по всему - запустить томкат в дебаге, запустить remote java application из экплипса на указанный порт, но все время валит ошибка:
Код

Failed to connect to remote VM. Connection refused.
Connection refused: connect

Может кто поможет?

Томкат стартует так:
Код

Listening for transport dt_socket at address: 8000
Oct 10, 2011 10:45:59 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found o
n the java.library.path: D:\Java\jdk7x64\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Perl\site\bin;C:\Perl
\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x
86)\QuickTime\QTSystem\;C:\Program Files\TortoiseSVN\bin;D:\Ant\bin;C:\Program Files\Perforce;D:\Java\jdk7x64\bin;C:\Program
 Files\Code Collaborator Client;D:\Tomcat\bin;.
Oct 10, 2011 10:45:59 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
Oct 10, 2011 10:45:59 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
Oct 10, 2011 10:45:59 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 946 ms
Oct 10, 2011 10:45:59 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Oct 10, 2011 10:45:59 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.21
Oct 10, 2011 10:45:59 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory clone
Oct 10, 2011 10:46:00 PM com.sun.xml.ws.transport.http.servlet.WSServletContextListener contextInitialized
INFO: WSSERVLET12: JAX-WS context listener initializing
Oct 10, 2011 10:46:01 PM com.sun.xml.ws.server.MonitorBase createRoot
INFO: Metro monitoring rootname successfully set to: null
Oct 10, 2011 10:46:02 PM com.sun.xml.ws.transport.http.servlet.WSServletDelegate <init>
INFO: WSSERVLET14: JAX-WS servlet initializing
Oct 10, 2011 10:46:02 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory docs
Oct 10, 2011 10:46:02 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory examples
Oct 10, 2011 10:46:02 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory host-manager
Oct 10, 2011 10:46:02 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory manager
Oct 10, 2011 10:46:02 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory ROOT
Oct 10, 2011 10:46:02 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Oct 10, 2011 10:46:02 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Oct 10, 2011 10:46:02 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 3023 ms


запускаю вот http://www.wikijava.org/wiki/Debugging_a_servlet_with_tomcat_and_Eclipse_tutorial:

Автор: Stolzen 11.10.2011, 12:11
Я вот так удаленный томкат стартую

Код

#!/bin/sh

export JAVA_HOME="/opt/jdk"
export JRE_HOME="/opt/jdk"

export JAVA_OPTS="-server -Xms1G -Xmx2G -XX:MaxPermSize=512M -Xdebug -Xrunjdwp:transport=dt_socket,address=31337,server=y,suspend=n"
export CATALINA_BASE="/opt/www/tomcat-debug"
export CATALINA_HOME="/opt/www/tomcat-debug"
export CATALINA_PID="/opt/www/tomcat-debug/tomcat.pid"
cd /opt/www/tomcat-debug/

tomcat_start() {
  echo "Starting debug"
  exec "bin/startup.sh"
}

tomcat_stop(){
  echo "Stopping debug"
  exec "bin/shutdown.sh"
}

case "$1" in
    start)
        tomcat_start;
    ;;

    stop)
        tomcat_stop;
    ;;

    restart)
        tomcat_stop
        tomcat_start
    ;;

    *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
    ;;
esac


Вот это
 -Xdebug -Xrunjdwp:transport=dt_socket,address=31337,server=y,suspend=n
Передается в JAVA_OPTS для того, чтобы можно было дебажить. И далее по той же инструкции можно подключаться - на порт 31337

Автор: priam220 11.10.2011, 12:39
Спасибо Stolzen,  оказывается все работало, просто в консоль ничего не выкидывало. А в дебаг панели в эклипсе заинаблилась кнопочка в виде буквы "N"(Connect/ Disconnect). Заметил просто не сразу, - эклипс не запущен, сижу тыкаю кнопки, и тут дебаг стоновится на брекпоинте... Думаю, что за дела.  smile  
Я запустил проще: 
Код

set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket
bin/catalina.bat jpda start

В эклипсе нужно запустить debug > remote java application на этот порт (8000). Можно создать bat. Твоя строка вроде бы нужна в Винде, если томкат запущен как сервис (из того что успел вычитать) smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)