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.
set JPDA_TRANSPORT=dt_socket
set JPDA_ADDRESS=8000
2. Start the binary distribution with the command line:
<TOMCAT_HOME>/catalina.bat jpda start
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.
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.
Please contribute