Servoy 2024.12.0

We are pleased to announce the availability of Servoy 2024.12.0 (release number 4023)

This version is available through the download site

See whats new for the global changes and the case list

An installation (coming from the normal installer or from a platform specific archive) is shipping with a Java VM (Java 21.0.5)

So for the platform specific archives you don’t need to install or have java on your system.

This release can be updated by using the “latest” url: http://download.servoy.com/developer/latest/ (when you come from 2019.03 or higher)
This release is build on Eclipse 2024.06 (4.33)

This is a release in our quarterly release cycle
if you want to stay on the LTS path you need to stick to 2024.03.4 LTS and enabled only the lts update site.

Almost all webpackages have new releases for the 2024.12 but older once should still work except NGGrid is mandatory to also upgrade.

If coming from a much older release like 2022.03 then you first have to updated to 2023.03 and then go to 2024.12
This is because of an Eclipse update bug that prevents these updates.

Congratulations Johan & the Team!

Jaspersoft plugin does not work anymore after upgrading to this release? Updating the plugin with the latest version did not help. Reverted back to previous release. Errormessage was cannot execute runReport on undefined object or something of the sort…

There are some breaking changes
Reports need to be recompiled and there is also a name change

I saw that but funny enough the plugin is still registered under the old name, maybe that’s the issue?

Hi Omar,

viewtopic.php?f=1&t=24113

I guess it should work, pls double-check your install.

Hi Marc,

I appreciate it, just to be sure I did the whole process again. Downloaded the JasperReports_Plugin_v.2024.12.0_7.0.1 and copied the servoy_jasperreports.jar and servoy_jasperreports folder to the plugins folder. However in the Solution Explorer the plugin is still named jasperPluginRMI. Renaming the references to the plugin anyway still causes the same error: Cannot call method “runReport” of undefined. Your welcome to take a look ;-)

i just downloaded the latest zip (24.12 version)
and extracted it in the plugins dir (no other jasper there)

and when i then do in a script editor:

plugins.ja[code completion)

i really get the new name

the same in the solex, also there i really see the new name

Ok thanks for now Johan, how mysterious, Mac? I will try it on my Windows machine as well next week. One thing I did notice is that my previous version also had a servoy_jasperreports_commons.jar.jnlp and a servoy_jasperreports.jar.jnlp which are not included in the new zip. I removed those before dropping in the new plugin. At the time I used the chart version of the plugin but I don’t see this anymore?

jnlp files are only for smart clients, which are no longer there…

If jnlp files are no longer there how do we include font extensions?

That was also only necessary for reports created in the (smart) client, then that client also needed to have the font extension. In NG Client, everything is server side and your font-extension is there. So my understanding is putting it into the servoy_jasperreports dir is good enough.

JNLPs are really only necessary for java webstart to know what to load to the client.

OK, thanks for the update. Will give that a try.

It appears to be an issue on the Mac only. On Windows it is correctly registered in the Solution Explorer as plugins.jasperReports. However on the Mac it persists in showing up as plugins.jasperPluginRMI in the SolutionExplorer.

No issue on my mac, it works as expected

I have no idea how this is possible. No other option than to revert back to a previous version until somebody else has the same issue or it is fixed…

Just tested on Mac (ARM)
Clean install of 2024.12
Drag Jasper folder + Jasper jar into application_server
Restarted and works fine.

I have just updated to this version plus the SPM updates. My application has a form with a tab panel and one tab, when an item on the menu is selected the correct for is loaded in the tab. The majority of the forms have an NG Grid on them. Since upgrading sometimes they don’t load or they load and you get the “loading” message on the grid, the grid loads but when you try and scroll through the records again het the “loading’” message. From the server log

Warning: Change sent from client to server for property ‘myFoundset’ with data ‘[{“newViewPort”:{“startIndex”:0,“size”:150},“id”:28}]’ of component ‘customer_table’ was denied (blocked by property named ‘visible’).Block reason: Parent container ‘customer_list’ of this component ‘customer_table’ currently blocks incoming client changes because of parent container property: visible

13:11:0 ERROR DataGrid - Could not load records for foundset root Start 0 End 50 buildStackMessage@http://localhost:8183/chunk-VZHH4OTU.js:29665:24
apply@http://localhost:8183/chunk-VZHH4OTU.js:29460:53
@[native code]
@http://localhost:8183/chunk-VZHH4OTU.js:142710:32
timer@http://localhost:8183/polyfills.js:1459:32
onInvokeTask@http://localhost:8183/chunk-QUUDQFLQ.js:7010:32
onInvokeTask@http://localhost:8183/chunk-QUUDQFLQ.js:7198:35
runTask@http://localhost:8183/polyfills.js:145:47
invokeTask@http://localhost:8183/polyfills.js:408:33

Not sure why the form customer_list is blocking incoming client changes.

it is blocking because for some reason the form is not visible, if the form should just be visible then that is a problem
if you have a sample for this then create a case with that sample

so this is not directly a grid problem but a tabpanel, visibility problem, its just that that form in the tabpanel isn’t make visible or made already invisible

I have been having a very similar ‘blocking’ issue with the latest version & data grids.
(I am using the cloudSample as a starting framework for my solution)
The warning is thrown when I am looking at a table view (based on ‘baseTableAdvanced’) of contacts (clients) and click the “+” icon at top to create a new record.
I thought it might be because I was displaying a tab panel that was also based on baseTableAdvanced, but with a different dataSource, so I tried creating another baseTableAdvancedTab with the table element having a different name (i.e. not ‘table’) but that didn’t help.

I just tried opening the cloudSample solution on my (ARM) Mac using 2024.9.1 and viewing the Customers table, then clicking the (new record) “+” icon and it all worked fine.
I then updated that Servoy to 2024.12, let it update everything (SPM/repo/etc.), then tried again and it straight away thru that warning, so you should be able to easily reproduce there using your own sample :wink:

WARN org.sablo.websocket.WebsocketEndpoint - Warning: Change sent from client to server for property 'myFoundset' with data '[{"newViewPort":{"startIndex":0,"size":49},"id":20}]' of component 'table' was denied  (blocked by property named 'visible').Block reason: Parent container 'customersTableView' of this component 'table' currently blocks incoming client changes because of parent container property: visible
ERROR org.sablo.BrowserConsole - ERROR 20 cancelled! buildStackMessage@http://localhost:8183/chunk-B7H6EQFB.js:28766:24
apply@http://localhost:8183/chunk-B7H6EQFB.js:28561:53
@[native code]
handleError@http://localhost:8183/chunk-WKH75ULW.js:7316:24
next@http://localhost:8183/chunk-WKH75ULW.js:21190:39
next@http://localhost:8183/chunk-WKH75ULW.js:634:29
_next@http://localhost:8183/chunk-WKH75ULW.js:603:26
next@http://localhost:8183/chunk-WKH75ULW.js:576:17
@http://localhost:8183/chunk-WKH75ULW.js:1037:24
errorContext@http://localhost:8183/chunk-WKH75ULW.js:545:7
next@http://localhost:8183/chunk-WKH75ULW.js:1030:17
emit@http://localhost:8183/chunk-WKH75ULW.js:6914:17
run@http://localhost:8183/polyfills.js:95:41
onHandleError@http://localhost:8183/chunk-WKH75ULW.js:7240:29
runGuarded@http://localhost:8183/polyfills.js:109:45
@http://localhost:8183/polyfills.js:1862:47
drainMicroTaskQueue@http://localhost:8183/polyfills.js:498:30
invokeTask@http://localhost:8183/polyfills.js:411:30
invokeTask@http://localhost:8183/polyfills.js:940:18
globalCallback@http://localhost:8183/polyfills.js:961:31

[Also you will see that as soon as sample opens there are loads of warning/red messages in console from the charts on dashboard]

And whilst I’m reporting issues, there is also a problem that updated components, like Bootstrap labels, are not having on ‘spec’ stuff removed from them.
I had to clear loads of warnings in my solution where these properties where left
faclass (replaced by imageStyleClass)
alignment (no longer used)
styleclass (replaced by styleClass)
There may be others, but these happened the most for me.
[I actually fixed them by opening the frm’s in BBEdit (text editor) and deleting those lines & saving & Servoy noticed the ‘fix’]
[attachment=0]ScreenFloat Shot of Servoy Developer at 13 Jan 2025 at 15_16_59 Large.png[/attachment]
Please can you fix these problems ASAP???
Thanks

Rafi