Remote debugging Pluto's binary distribution or portlets deployed in Pluto
The Tomcat Development FAQ is the definitive authority on remote debugging in Tomcat, which is the basis for Pluto's current bundled binary distribution (see http://tomcat.apache.org/faq/development.html). I am adding a few more explicit details here.
Setup Tomcat/Pluto for Remote Debugging
- Add these statements to the top of catalina.bat in the bin directory
set JPDA_TRANSPORT=dt_socket
set JPDA_ADDRESS=8000
2. Start the binary distribution with the command line:
<TOMCAT_HOME>/catalina.bat jpda start
Remote Debugging in Eclipse
- Select the portlet (or portal component) you want to debug.
2. Right click and select Debug As -> Debug . . .
3. In the Debug dialog that appears, click on Remote Java Application on the left side of the Debug dialog and select New . . .
4. On the right side of the Debug dialog fill in the following:
Name: a unique name
Project: the Pluto source code project if you want to debug Pluto or your portlet project
Connection Type: Standard (Socket Attach)
Host: localhost (unless the Pluto server is somewhere else)
Port: 8000 (what you set as JPDA_ADDRESS above)
Allow termination of remote VM: leave this unchecked
5. Click Debug button
6. Set one or more breakpoints
7. Open up a web browser and browse to the portal (http://localhost:8080/pluto/portal) and login
8. Browse to a portal page that will trigger a breakpoint. The control will switch back to Eclipse in debug mode.
9. Debug away (step over/ step into, etc)!
10. Click on the Disconnect icon to terminate debugging. Restart the debugger by selecting the name of the connection set up in Step 3 from the Debug icon on the toolbar.
Remote Debugging in IDEA
Click on Edit Configurations -> Add New Configuration -> Remote -> Enter host(localhost)/port(8000).
Eventually disable "Make" before running. That's it - rest works just like normal debugging.
I haven't found a way to start pluto from inside IDEA, though.
Remote Debugging in Net Beans
Please contribute