Servoy 8.0.1

We are pleased to announce the availability of Servoy 8.0.1 (releaseNumber 3021)

This version is available through the download option on the Servoy website and auto update.

Always make a backup of your current Servoy installation (directory and database) before installing/upgrading.
Especially for this release because we needed a repository upgrade (now on 47). So the workspace version of your developer will also be updated.
To update a Servoy eclipse open “Check for updates” via help menu.

The issues addressed, since Servoy 8.0.0 release:

General

[enh] SVY-8495 Can’t supply array of values as parameter on QBSelect
[fix] SVY-7715 Load records by query for querys that don’t start with select

NG Client

[enh] SVY-8530 Created Template Elements not found in toolbox
[enh] SVY-8694 onsolutionclose not called when closing browser or browsertab
[enh] SVY-8785 Unable to wrap text on labels NGClient
[enh] SVY-8714 make the readonly tableviews configurable in the designer
[enh] SVY-8748 making the pageScrollFactor configurable
[enh] SVY-8713 upgrade to the latest ui-grid (final code)
[fix] SVY-8397 fieldformat is not correctly applied
[fix] SVY-8398 Controller readOnly is not working in listView or tableView in NGClient
[fix] SVY-8425 Images not scale in Webclient
[fix] SVY-8693 sample crm not working in NGclient
[fix] SVY-8703 Popup form doesn’t show in the correct context of the element
[fix] SVY-8705 Form is not showing new record
[fix] SVY-8710 The bootstrap Label is rendered ad an Input field if the LabelFor property is empty.
[fix] SVY-8718 Exception when to many clients connect
[fix] SVY-8741 Element groups don’t work in NG client
[fix] SVY-8746 Window plugin menuItem.setEnabled gives error in ngClient
[fix] SVY-8747 different results between smart and ng client
[fix] SVY-8754 onAction is not triggered when the dataprovider returns an image_media through a calculation
[fix] SVY-8758 An image is not correctly updated in ngClient
[fix] SVY-8765 Setting selected index causes rendering of both previous and selected record as selected
[fix] SVY-8770 The idle NGClient are not removed from server until a new connection comes in.
[fix] SVY-8774 The solution hangs when opening twice the same search dialog
[fix] SVY-8777 Tab not switching from code
[fix] SVY-8780 Event “onShow” is not triggered
[fix] SVY-8784 can’t combine SUBTRACT key shortcut with requestFocus on NGClient
[fix] SVY-8786 NG has different alignment for small images in image-media field
[fix] SVY-8787 Fields editability is not correct with the readOnly status of form
[fix] SVY-8788 plugins.file.showFileOpenDialog with multi file triggers multiple callbacks and callbacks may run async
[fix] SVY-8791 Shortcut are called out of context
[fix] SVY-8792 key shortcut context is wrong
[fix] SVY-8794 NG-Client errors on startup
[fix] SVY-8819 ng client css loading order
[fix] SVY-8823 label and field not working
[fix] SVY-8824 Nullpointer in frameworks
[fix] SVY-8825 Error Could not set property value for id fs on object WebComponent
[fix] SVY-8830 onDataChange doesn’t work for new record with the same value
[fix] SVY-8836 sending messages to clients from the admin page is not working
[fix] SVY-8837 maintenance mode shows page expired
[fix] SVY-8838 foundset creating and saving records
[fix] SVY-8839 format in NG doesn’t work right
[fix] SVY-8840 StackOverflowError and screen freeze
[fix] SVY-8874 Menu in the frameworks doesn’t open items anymore.
[fix] SVY-8882 Accordion Content (fields) not displaying at first run
[fix] SVY-8884 anchoring doesn’t work correct in NG client
[fix] SVY-8886 Decimal separator isn’t recognised the first time
[fix] SVY-8893 Error in log: should the form x have a window name?
[fix] SVY-8895 Error in log: Error when getting browser updates for property
[fix] SVY-8899 Client performance is not about queries
[fix] SVY-8925 Using the value media:///image.png in a field, doesn’t work in NG
[fix] SVY-8929 Setting the backgroundcolor of a combobox doesn’t work
[fix] SVY-8812 Remove bootstrap.css by default

Smart Client

[fix] SVY-8307 error loading dataset into foundset using foundset.loadRecords(dataset)

Web Client

[fix] SVY-8425 Images not scale in Webclient
[fix] SVY-8481 WAR Export: L&F-related jars in LAFS folder don’t end up in WAR file
[fix] SVY-8754 onAction is not triggered when the dataprovider returns an image_media through a calculation
[fix] SVY-8835 servoy8 webclient styles headaches

Developer

[enh] SVY-8684 Unable to control the timeout when running unittests in Developer
[enh] SVY-8814 Ctrl+L in NGclient
[enh] SVY-8927 export component/service package option (create a zip)
[fix] SVY-8630 Unable to restore default property values from inherited elements
[fix] SVY-8775 [ Form editor ] loads very slow when not connected to the internet
[fix] SVY-8806 Resizing split pane in new form editor
[fix] SVY-8809 If you set your solution to NG-only you get a lot of warnings and no code completion on example dataset functions
[fix] SVY-8826 Exceptions and left-behind forms in design and debug NG client (when deleting forms)
[fix] SVY-8841 script editor autocomplete doesn’t work for layout elements
[fix] SVY-8854 NPE in developer when using loginsolution icw title on main solution
[fix] SVY-8942 Tableview form does not refresh correctly when in a related tab form of a tab panel
[fix] SVY-8712 File upload dialog is hardcoded in English
[fix] SVY-8732 War-export dialog in developer should support multi-select and double-click

Server

[enh] SVY-8767 Show progress during deployment
[fix] SVY-8738 Stopping & undeploying WAR not possible
[fix] SVY-8739 Pre and postimport hooks are not executed in war deployment when wars are not unpacked
[fix] SVY-8769 The servoy-admin/client section should show web-socket idle time as well.

Plugins

[fix] SVY-8752 plugins.mail.isValidEmailAddress(harjo@kompagnie.amsterdam) fails
[fix] SVY-8880 Server setting “servoy.FileServerService.defaultFolder” needs to be constructed differently

know issues:

1> Some form enabling problems could happen (when using toggling controller enable = true/false)
2> editable tableviews with tabsequence will not fully work when scrolling out of the view.

Previous release notes: this page

As I see there are a lot of issues fixed that are not NGClient-related, is it recommended to switch over to Servoy 8.0.1 even when you intend to stay with the smart client for some time?
Or will all non-NGClient improvements also appear in the next Servoy 7 update?

Or in other words, does Servoy 8.0.1 hold the complete subset of the latest version of Servoy 7, and is it as stable as Servoy 7 regarding the smart client?

Hi Bernd,

Going through the issues you can see that the fix versions are 8.0.1 and 7.4.5. Servoy 7.4.5 is already available as a release candidate.
So you can use 7.4.5. to get all these bug fixes in the 7.x branch.

As for stability, consider that Servoy 8 comes with a newer Eclipse version than Servoy 7 (4.5.0 ‘Mars’ vs 4.3.2 ‘Kepler’) and also a newer version of Tomcat than Servoy 7 (8.x vs 6.x). So things could behave differently because of this, hopefully for the better. Servoy does a lot of internal testing, automated and otherwise, so things should be stable.
But as with every new major version (of anything) I suggest you do some proper testing yourself.

As for the new form editor in Servoy 8 that still requires some work from Servoy, you can switch back to the ‘classic’ form editor for non-responsive forms by ticking a checkbox in the preferences. So if you don’t use ng-client at all you can work with it like Servoy 7 and below.

Thanks for the technical internals about Servoy 8!

Hi all,

Our application uses custom login and authenticator solutions instead of the generic Servoy login. In Servoy 7 everything works fine in both Smart & Web client. However running exactly the same code in Servoy 8, we get an “internal error” after successful login (below is the error from the server log).

Does anybody else have similar issues when using custom login/authenticator solutions in Servoy 8?

2015-10-23 15:57	http-nio-8088-exec-2	ERROR	org.apache.wicket.protocol.http.WicketFilter	closing the buffer error	
java.lang.IllegalArgumentException 
at org.apache.catalina.connector.Response.normalize(Response.java:1714) 
at org.apache.catalina.connector.Response.toAbsolute(Response.java:1634) 
at org.apache.catalina.connector.Response.encodeRedirectURL(Response.java:1107) 
at org.apache.catalina.connector.ResponseFacade.encodeRedirectURL(ResponseFacade.java:429) 
at org.apache.wicket.protocol.http.WebResponse.redirect(WebResponse.java:210) 
at org.apache.wicket.protocol.http.BufferedWebResponse.close(BufferedWebResponse.java:67) 
at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:502) 
at com.servoy.j2db.server.servlets.Zu.doGet(Zu.java:10) 
at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:138) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:618) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:725) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at com.servoy.j2db.server.ngclient.startup.resourceprovider.ResourceProvider.doFilter(ResourceProvider.java:306) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at com.servoy.eclipse.designer.rfb.startup.EditorContentFilter.doFilter(EditorContentFilter.java:91) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1081) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658) 
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1566) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1523) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
at java.lang.Thread.run(Unknown Source)

I can not guess why in your case Servoy 8 would need 4 times more than Servoy 7. The Servoy Developer Team might be interested in your case, so maybe you file it to them at support.servoy.com

However I can add an experience from when I started with Servoy 7, the building took also several minutes. But then I got a faster computer with more RAM, and since them it is just about 10-20 seconds. That’s very important for me, because I have to restart Servoy 7 often as we generate the i18n files ourselves from metadata, and restarting is an easy way to read the i18n file into Servoy.

the thing is that the building part (at least the javascript testing and building) is not changed at all between 7 and 8 (dltk is and servoy code around that is the same)

So i have no idea what really is different (except maybe pure servoy building checks, but those where not taking any time anyway as far as i know)

jcompagner:
the thing is that the building part (at least the javascript testing and building) is not changed at all between 7 and 8 (dltk is and servoy code around that is the same)

So i have no idea what really is different (except maybe pure servoy building checks, but those where not taking any time anyway as far as i know)

I think it had to do something with the Servoy 8 version which I installed for the training classes at Servoy World 2015. With a clean install and update to 8.0.1 it is ok.

Hi Rossen,
can it be that you changed your original question?
Because now the answers do not fit any more to your original question, that was about why your Servoy 8 needs 4-5 times longer to startup. :)

rossent1327331687:
Does anybody else have similar issues when using custom login/authenticator solutions in Servoy 8?

I created a case for this issue: https://support.servoy.com/browse/SVY-9015 - both the Web Client and the NG Client do not work when using custom login & authenticator solutions. Check the sample solution attached to the case and vote for this issue if it affects your projects.

Bernd.N:
Hi Rossen,
can it be that you changed your original question?
Because now the answers do not fit any more to your original question, that was about why your Servoy 8 needs 4-5 times longer to startup. :)

Yes, after a clean reinstall of 8.0.1 it worked ok

Yes, I also prefer clean new installs, e.g. I would not install Windows 10 to any running Windows 7/8, but only to an empty hard disk.

rossent1327331687:

rossent1327331687:
Does anybody else have similar issues when using custom login/authenticator solutions in Servoy 8?

I created a case for this issue: https://support.servoy.com/browse/SVY-9015 - both the Web Client and the NG Client do not work when using custom login & authenticator solutions. Check the sample solution attached to the case and vote for this issue if it affects your projects.

This issue applies to the Web Client only if the property “servoy.webclient.nice.urls” is set to “true” - so if you happen to hit this issue, just change the property to “false” until Servoy fixes the problem.

I just asked a colleague who tried it out and he said it is running fine.
Servoy is build on an open source stack like Java, JavaScript, Eclipse and HTML5 for the new client, and most use postgreSQL as the database backend.
As that stack is for sure compatible with Win10, so should Servoy be.
And even in case there would be major issues, you can be sure the Servoy devTeam will fix them.