| Tutorial - Checking out Taverna source code, compiling, running and debugging | ||||
|---|---|---|---|---|
|
|
|
|
|
|
|
|
||||
This is part of the Tutorial - Checking out Taverna source code, compiling, running and debugging
- Previous step: 5. Running Taverna from Eclipse
Introduction
In this step, we will show how to debug Taverna using Java's remote debugging and Eclipse, and how to configure Taverna logging levels.
Remote debugging with Eclipse/NetBeans
A useful technique for debugging Taverna is to use the remote debugging facility Java offers. This has the advantage that you will be debugging Taverna under conditions it normally runs in, together with its modified classloaders. Debugging in this way is actually very straightforward. First you need to add the following VM arguments to your startup script taverna.sh (MAC OS X/Linux) or taverna-debug.bat (Windows).
In Eclipse you can then configure a "Remote Java Application" from the Run -> Debug Configurations dialog, using the port defined by the address setting within the connection properties (8000 in the example) . You will also need add the Taverna project from the Source tab.
Once you have started Taverna using your modified startup script, you can then start you newly configured Remote Java Application which will then connect to the listening port and stop at your breakpoints just as you would normally debug an application within Eclipse.

You can debug in NetBeans in a similar way by selecting the menu option Run -> Attach Debugger.
Taverna log messages
You can increase the level of logging by modifying the conf/log4j.properties inside Taverna startup directory
.
SOAP messages
If you want to examine SOAP messages sent from and received by Taverna, they are logged to taverna-x.y.z.log file in logs directory of your Taverna home directory
.
You can see SOAP request and response messages in more detail by turning on DEBUG logging for the HTTPSender used by Axis. This is achieved by modifying the conf/log4j.properties in your Taverna startup directory
and adding the following lines:
Bear in mind this will generate a lot of logging.
If you are a Web service developer using Axis and want to inspect the SOAP messages your service is sending and receiving, you might also want to check the SOAPMonitor utility provided by Axis.
- Previous step: 5. Running Taverna from Eclipse