Kevin Altis writes:
For those people wanting to do source-level debugging of servlets under Windows with Resin and the Kawa Pro 5.0 IDE from Allaire (this should work with the Enterprise Edition as well) I've adapted the example of using Kawa with Tomcat at Allaire .
Note that you can download Kawa and try it for free for 30 days if you are looking for a new IDE under Windows. It sure beats using jdb for debugging ;D
Select Project/New menu option and create a new project under doc\WEB-INF\classes directory of Resin. Please type the name for this project as HelloServlet. Kawa will create a new project and open it as the current project.
Select Project/Add File... and select HelloServlet.java file to add to the newly created project.
Since Kawa is not setup by default to work with Resin, add resin.jar, jsdk22.jar, jdk12.jar, jdbc2_0-stdext.jar, jta-spec1_0_1.jar, jndi.jar, dom.jar, sax.jar, jaxp.jar, and webutil.jar to the classpath by selecting Project/Classpath and click on File... button to add resin.jar, jsdk22.jar, jdk12.jar, jdbc2_0-stdext.jar, jta-spec1_0_1.jar, jndi.jar, dom.jar, sax.jar, jaxp.jar, and webutil.jar under the resin/lib directory to the classpath.
Set the Compilation output directory to doc\WEB-INF\classes by selecting Project/Compiler Options and click on the ">>" to add it. For example, if you have installed Resin in your D:\ drive, then check the "Compilation output directory" and add the value "D:\resin\doc\WEB-INF\classes"
Perform a rebuild all to compile all files in the project.
Select Project/Interpreter options to set the Java class name to run. Set the "Java class name to run" to com.caucho.server.http.HttpServer and check the box. This will force the class name to run Startup when you select Build/Run.
Select Project/Interpreter options to set the Working directory. Set the "Execute program in directory" to Resin install directory and check the box. For example, if you have installed Resin on your d:\ drive then set this option to "D:\resin". This will force the working directory to the Resin install directory when select Build/Run.
If you are interested in debugging the servlet, then go to Project/Compiler Options and check the "Debugging Tables (-g)" option. This will display local variables during debugging of the servlet.
Select Build/Run to start the Resin WebServer daemon. If all the settings were done correctly Kawa output window will display the following lines and the daemon is started successfully. [Note: in my case Resin is installed at c:\java\resin, I'm using Sun JDK 1.3 and I've turned off srun in my .conf file.]
Now start up a browser and bring up the servlet by typing "http://localhost:8080/servlet/HelloServlet" If all of the above steps were done correctly, the servlet will print "Hello, world!" on the page.
In order to start the debugger, set some breakpoints in HelloServlet.java file and press F5 to start the debugger. Once again go to a browser and open "http://localhost:8080/servlet/HelloServlet" At this time Kawa will hit the breakpoint and you can debug the servlet just like you would debug a non-servlet project. Please refer to debugger tutorial for more details on how to debug under Kawa.
I'm using Kawa Pro 5.0 under Windows 2000 with Resin 1.2.3 and the Sun JDK 1.3. HelloServlet.java isn't very interesting, but you should easily be able to adapt the above directions for your own servlet, just remember to set the paths correctly. Kawa can debug threads, but I haven't tried it yet with Resin.