Difference between revisions of "SCA/SCA Component/SCA Java Run and Debug Platform"

From Eclipsepedia

< SCA
Jump to: navigation, search
(New page: == Introduction == When you debug an SCA Java project on an SCA platform, it is also possible to debug the platform itself.<br /> Obviously, the developers of the platform did not wait fo...)
 
 
(3 intermediate revisions by one user not shown)
Line 15: Line 15:
 
Go into the debug perspective: '''Window &gt; Open perspective &gt; Debug'''.<br />
 
Go into the debug perspective: '''Window &gt; Open perspective &gt; Debug'''.<br />
 
We are now going to add a breakpoint somewhere in your main.
 
We are now going to add a breakpoint somewhere in your main.
 +
  
 
=== Starting from the main source file... ===
 
=== Starting from the main source file... ===
Line 41: Line 42:
  
 
[[Image:SCA Java Run and Debug Platform searchSource.gif]]
 
[[Image:SCA Java Run and Debug Platform searchSource.gif]]
 +
  
 
[[Image:SCA Java Run and Debug Platform foundSource.gif]]
 
[[Image:SCA Java Run and Debug Platform foundSource.gif]]
Line 53: Line 55:
  
 
The editor should only show bytecode.<br />
 
The editor should only show bytecode.<br />
Click '''Attach Source...''', select "External File...''', choose the source file on your disk. Then click '''OK''' until you are back to the editor. You should now see the main class code. In this source file, make a right-click somewhere on the left margin of the editor and select '''Toggle breakpoint''' (or make a double-click). This breakpoint should be visible in both the editor and the '''Breakpoints view'''.
+
Click '''Attach Source...''', select '''External File...''', choose the source file on your disk. Then click '''OK''' until you are back to the editor. You should now see the main class code. In this source file, make a right-click somewhere on the left margin of the editor and select '''Toggle breakpoint''' (or make a double-click). This breakpoint should be visible in both the editor and the '''Breakpoints view'''.
  
 
Now, right-click on your composite and select '''Debug as... &gt; SCA application'''. Select the configuration you want to debug and click '''OK'''.
 
Now, right-click on your composite and select '''Debug as... &gt; SCA application'''. Select the configuration you want to debug and click '''OK'''.
Line 61: Line 63:
  
 
You are now moving into the main class code.<br />
 
You are now moving into the main class code.<br />
Use the '''Step Into''', '''Step Over''' and '''Step Return''' buttons to navigate into the code.<br />
+
Use the '''Step Into''', '''Step Over''' and '''Step Return''' buttons to navigate into the code.
You should finally arrive to a runtime class. Once again, you will most likely have to associate the source code. Click '''Attach Source...''', select '''External File...'''. On your disk, choose the source distribution of the platform. Then click '''OK''' until you are back to the editor. You should now be in the platform code. You can now add breakpoints into the platform code, check the variables... in short, debug the platform code.
+
 
 +
[[Image:SCA Java Run and Debug Platform debugView.gif]]
 +
 
 +
 
 +
You should finally arrive to a runtime class. Once again, you will most likely have to associate the source code.
 +
 
 +
[[Image:SCA Java Run and Debug Platform noSources.gif]]
 +
 
 +
 
 +
Click '''Attach Source...''', select '''External File...'''. On your disk, choose the source distribution of the platform.
 +
 
 +
 
 +
[[Image:SCA Java Run and Debug Platform foundSources.gif]]
 +
 
 +
 
 +
Then click '''OK''' until you are back to the editor. You should now be in the platform code.
 +
 
 +
[[Image:SCA Java Run and Debug Platform debugPlatformCode.gif]]
 +
 
 +
 
 +
You can add breakpoints into this code, check the variables... in short, debug the platform code.
 +
 
 +
[[Image:SCA Java Run and Debug Platform variables.gif]]
  
  
Line 71: Line 95:
  
 
This case is even more simple than previously.<br />
 
This case is even more simple than previously.<br />
In the console, click the class link. It should be open in the editor and be displayed as bytecode. Associate the source as described previously and then add breakpoints. Run the composite once again in debug mode and check what went wrong.
+
In the console, click the class link. It should be open in the editor and be displayed as bytecode.<br />
 +
Associate the source as described previously and then add breakpoints.<br />
 +
Run the composite once again in debug mode and check what went wrong.
 +
 
 +
 
 +
[[Category:SOA_Tools]]
 +
[[Category:SOA]]
 +
[[Category:STP]]
 +
[[Category:SCA]]

Latest revision as of 04:35, 9 November 2010

Contents

[edit] Introduction

When you debug an SCA Java project on an SCA platform, it is also possible to debug the platform itself.
Obviously, the developers of the platform did not wait for us to provide such a solution. But we signal it on this wiki because it can be quite useful to see how to do that.
It also opens some perspectives to add breakpoints and debugging features for composite elements.

Notice: obviously, to ease the debugging, you should have both the binary and the source distribution of the SCA platform you are using.


[edit] Debugging from the main class

Find the main class file in your Eclipse.
You can find it either because you already have the source, or by using the Java search feature of Eclipse (Java > Search Java... and search the type you gave in the master launch configuration).

Go into the debug perspective: Window > Open perspective > Debug.
We are now going to add a breakpoint somewhere in your main.


[edit] Starting from the main source file...

Open the source file.

SCA Java Run and Debug Platform editor.gif


Make a right-click somewhere on the left margin of the editor and select Toggle breakpoint.
This breakpoint may not be visible in the editor, but it will be visible in the Breakpoints view.

SCA Java Run and Debug Platform breakpoints.gif


Now, right-click on your composite and select Debug as... > SCA application.
Select the configuration you want to debug and click OK.

If your main class is not in the workspace, the debug editor will show you an empty editor.

SCA Java Run and Debug Platform noSource.gif

You will have to associate the sources manually. In this case, click Edit Source Lookup Path....
Select Default and click Add.... In the second dialog, select the appropriate choice.
For this tutorial, since I have the source of TuscanyMain1x, I can select File System Directory and give the right location.

SCA Java Run and Debug Platform searchSource.gif


SCA Java Run and Debug Platform foundSource.gif


Click OK until you get back to the source. You have your source now.

SCA Java Run and Debug Platform withSource.gif


[edit] Starting from the main class file...

The editor should only show bytecode.
Click Attach Source..., select External File..., choose the source file on your disk. Then click OK until you are back to the editor. You should now see the main class code. In this source file, make a right-click somewhere on the left margin of the editor and select Toggle breakpoint (or make a double-click). This breakpoint should be visible in both the editor and the Breakpoints view.

Now, right-click on your composite and select Debug as... > SCA application. Select the configuration you want to debug and click OK.


[edit] Getting into the platform code

You are now moving into the main class code.
Use the Step Into, Step Over and Step Return buttons to navigate into the code.

SCA Java Run and Debug Platform debugView.gif


You should finally arrive to a runtime class. Once again, you will most likely have to associate the source code.

SCA Java Run and Debug Platform noSources.gif


Click Attach Source..., select External File.... On your disk, choose the source distribution of the platform.


SCA Java Run and Debug Platform foundSources.gif


Then click OK until you are back to the editor. You should now be in the platform code.

SCA Java Run and Debug Platform debugPlatformCode.gif


You can add breakpoints into this code, check the variables... in short, debug the platform code.

SCA Java Run and Debug Platform variables.gif


[edit] Debugging from a stack trace

Let's assume you deployed a project and that it failed.
You have a stack trace in the console, referencing some classes of the platform and lines indicating where it failed.

This case is even more simple than previously.
In the console, click the class link. It should be open in the editor and be displayed as bytecode.
Associate the source as described previously and then add breakpoints.
Run the composite once again in debug mode and check what went wrong.