How to debug a Servoy app

Dear all,

it might be a stupid question, but I also need to ask: How can I debug my Servoy app?

Right now, my Servoy Developer version is 2023.3.3.3845_LTS, running on a Windows machine.

I navigated to Run on menu bar, but the selection for debugging is inactive like in the picture

[attachment=0]2023-11-30 01_48_57-blog-code-not - Servoy Package Manager - C__workspace_projects_blog-code-not - S.png[/attachment]

Is there any ideas for this problem?

Thanks

Hi, those menu options are for older Servoy client types.

You need to switch to the Debug perspective in Eclipse.

There is a row of icons small icons for switching perspectives in the top right corner of the main Window.

When you launch a client from developer it will stop at the breakpoints.

Hope this helps,

Hi,

Just to add to what swingman explained: basically the ‘Launch NGClient / NGDesktop Client’ are named inconsistent.
Every client launched from developer is a debug client (only 1 at the time), this is why Servoy Developer will kill a previous NGClient browser session when you launch a new one.

For NG, if you need multiple sessions in order to test for example data broadcasting, you can launch up to a total of 5 sessions (including debug client session) by adding ‘nodebug=true’ to the url
Something like this:

http://localhost:{PORT_NUMBER}/solutions/{SOLUTION_NAME}?nodebug=true

depending on the version NG / TiNG, ‘solutions’ might also read ‘solution’

in addition to Marc’s tip:
you can add menuitems, buttons… to your application when application.isInDeveloper()
so that you can launch easily multiple nodebug clients without the need to fiddle with URLs

function runNoDebugClientTi() {
	application.showURL(application.getServerURL() + 'solution/' +application.getSolutionName()+ '/index.html?nodebug=true');
}

function runNoDebugClientNg() {
	application.showURL(application.getServerURL() + 'solutions/' +application.getSolutionName()+ '/index.html?nodebug=true');
}

Thanks guys! You, guys shed some light to me!