Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to debug a JSP tomcat service using eclipse?

I would like to debug my separately running JSP/Struts/Tomcat/Hibernate application stack using the Eclipse IDE debugger. How do I setup the java JVM and eclipse so that I can set breakpoints, monitor variable values, and see the code that is currently executing?

like image 437
user10402 Avatar asked Sep 15 '08 23:09

user10402


People also ask

Can I debug JSP in Eclipse?

Set a BreakpointWorkshop extends the Eclipse debugger to allow you to debug JSP code. To set a breakpoint: Right-click in the gutter of the Source view and select Toggle Breakpoints.


3 Answers

I just Googled it. :)

http://bugs.sakaiproject.org/confluence/display/BOOT/Setting+Up+Tomcat+For+Remote+Debugging

Many more on google.

Effectively, set your JPDA settings: set JPDA_ADDRESS=8000 set JPDA_TRANSPORT=dt_socket bin/catalina.bat jpda start

Then, in Eclipse, Run->Debug Configurations...->Remote Applications.

like image 68
DustinB Avatar answered Nov 04 '22 01:11

DustinB


Follow these steps:

  1. Add the following arguments to the java command that is used to launch Tomcat (on Windows, I think this is in TOMCAT\bin\catalina.bat)

    -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n

  2. In Eclipse, create a 'Remote Java Application' debug configuration and set the port to 8787 and the host to the name (or IP address) of the machine where Tomcat is running. If Tomcat is running on the same machine as Eclipse, use 'localhost'.

  3. In the 'source' tab of the debug configuration, add any projects that you want to debug into

  4. Start Tomcat

  5. Launch the debug configuration you created in step 2

  6. Eclipse should now stop at any breakpoints that you've set in the projects you added in step 3.

Notes:

  • You can change the port to any other available port if for some reason you can't use 8787
  • If you want Tomcat to wait for the remote debugger to start, use 'suspend=n' in the command above to 'suspend=y'
like image 25
Dónal Avatar answered Nov 04 '22 00:11

Dónal


You could do what they suggest, or use this Eclipse plugin, which makes it easier to configure Tomcat to begin with: Eclipse Tomcat Plugin

When launching tomcat via this plugin, it starts in debug mode by default, you must explicitly disable debugging mode if you want it to not allow Eclipse to connect a remote debugger.

like image 22
MetroidFan2002 Avatar answered Nov 04 '22 01:11

MetroidFan2002