Servoy 3.0 Release Candidate 1

We announce the immediate availability of Servoy 3.0 Release Candidate 1

NOTE: this is PRE-RELEASE SOFTWARE, use with caution and make BACKUPS before you start.

This version is available through auto update and download page on Servoy website (developer section)

Changes:
[fix]-Images in modules unreferenced after import bug (change in repository model)
[fix]-Scheduler plugin when using multiple batchprocessor clients
[fix]-webclient UI generation
[fix]-typeAhead field with only empty value available the pop-up is not shown.
[enh]-printing in webclient via PDF
[enh]-made exception handling possible
[enh]-made loginForm for external login methods possible (for example LDAP)
[enh]-performance improvement in unstored calcs

Previous releases:
http://forum.servoy.com/viewtopic.php?p=31612#31612

Jan Blok:
We announce the immediate availability of Servoy 3.0 Release Candidate 1

Fantastic job: SinkWhenLast property and getSQL function are GREAT! :-)

Hi guys,

Congrats on reaching the RC stage!

Some things I noticed:

  • Have some beans on my form. I’m trying to hide these beans when running the WebClient (since they don’t make sense in the WebClient) using:
if (application.getApplicationType == 5) elements.xxx.visible = false

But, this doesn’t work in the Webclient, an image of the bean is shown anyway.

  • In some cases, included modules are shown multiple times in the Servoy Editor tree. The module that is added directly to solution A can also be added to other modules that are included to Solution A

  • Seeign the following error appear in the console:

2006-08-07 16:18:27,361 INFO [main] com.servoy.j2db.util.Debug - Using RMI registry on port 1099
2006-08-07 16:18:37,150 ERROR [main] org.apache.catalina.session.ManagerBase - IOException while loa
ding persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableExce
ption: com.servoy.j2db.server.headlessclient.dataui.WebTabPanel$a
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: com.servoy.j2db.se
rver.headlessclient.dataui.WebTabPanel$a
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1303)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1912)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1836)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1912)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1836)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at java.util.ArrayList.readObject(ArrayList.java:592)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:919)

This error appears int he console when starting Developer, even before a solution is selected from the “select solution” dialog.

  • In the WebClient, I retrieve the width and height of an element and then set the width and height to the exact same size as Servoy just returned. When doing this, the element gets a bit smaller. This is in IE6.0 and the element has a border.

Regards,

Paul

Ps: Nice touch, the shortcuts to start the WSClient and Webclient.

It seems with some drivers from oracle started to return Decimal decription for column being number(10,0) In Servoy 3.0 b4 we adapted for this change.


Jan Blok
Servoy

This fix doesn’t seem to have made it into RC1… :cry:

Paul

Paul,

will look at that bean thing. When are you calling that visible set exactly? In the onshow/onload of the form?

So if module A is added to B and C (B == solution and C is another module) then we see A now double? Will try to reproduce this.

That exception in the console can be ignored. Will try to filter these in a next release.

About heigh/width do yo uset those on Fields of Labels ? Or is it with both? The problem is that this will always be very tricky until we can use box-model: border-box instead of content-box in CSS. but Apples browser doesn’t do that at the moment (and IE only with a “hack” == quirks mode)

the none visible bean still showing and the duplicate modules are fixed for the next build.

I’m experiencing a weird refresh issue. I made a short video to illustrate:

I just upgraded to RC1 a short time ago, and I don’t recall seeing this problem before the update. Any ideas on why the list view seems to disppear? Is it just some weird refresh issue?

I am also experiencing a screen refresh problem which was previously not there.

A little bit more info. When the FID in the movie is displayed, the foundset count of the main form goes to zero, and then reverts back to the original count when the FID is dismissed. Weird.

Also, in the svyCRM demo solution, if you click on the New Contact button in the Related Contacts tabpanel, the company list at the top left does the same disappearing act.

Hi Johan,

I guess the questions about regarding the issues that are allready fixed don’t need answering anymore, right? :D Thx for fixing them.

About heigh/width do yo uset those on Fields of Labels ? Or is it with both? The problem is that this will always be very tricky until we can use box-model: border-box instead of content-box in CSS. but Apples browser doesn’t do that at the moment (and IE only with a “hack” == quirks mode)

I tested it only with fields up to now. My experience with IE is that when you do .getOffSetWidth, it returns the width excluding the borders and when you set the width, it includes the borders, thus when retrieving the size and then set the size with the value just retrieved, the component shrinks. Dunno if you use .getOffSetwidth though :). I will test with labels as well.

Paul

While testing stuff in the webclient, I ran into 2 things that are make life a bit more difficult:

  • When testing the webclient, I often open a new WebClient (browser refresh often doesn’t work to start seeing the changes made in developer) and after opening three WebClients I run out of licenses (the three allowed clients on a developer license) and have to go into the Admin pages to kill the three clients that are still taking up a license, but are not active any more (Browser window is allready closed). Is there a way to make this easier? Maybe check the clients if they still exists when opening a new Webclient through the new “Start Webclient” shortcut and remove the inactive WebClients? (dunno if that is technically possible…)

  • When starting a Webclient through the new “Start Webclient” shortcut, on my system, the Webclient opens in de default browser (offcourse), but in an existing Browser window, if that exists. Is that something that Servoy can control, or is the my specific setup (WinXP)? I would prefer to have the WebClient start in a new browser window.

Paul

The disappearing thing foundsets are fixed in the next release

Johan,

When you retrieve the size and then set the size with those values the following happens:
FireFox 1.5.0.6 (Windows):

  • Field: width and height get smaller
  • Label: only width gets smaller

IE 6.0 (Windows):

  • Field: width and height get smaller
  • Label: only width gets smaller

I also noticed the following:

  • When a field has a default border, in the WebClient the field is larger than it should be. It seems that the default border is drawn around the component. So, if you have a component sized 20100 and the border is 2 px, the component in the rich client is 20100 including the border and in the Webclient the component becomes 24*104. This only goes for fields with a default border. If you explicitly specify a border (I tried a line border, width 5px), the border is drawn inside the specified dimensions of the component.

  • A background color specified on a button is not shown in the WebClient (the default image of the button is shown)

  • A border (with a different color) specified on a button is not shown, but the button is shrunken on the bottom and right by twice the width of the border (so the button shows smaller, but is located at x,y, instead of x+border, y+border)

Paul

I think i have the default sizes and the javascript size changes fixed. Dont know about all the cases if you use your own css that also sets the border/padding and or margin…

By the way this is how CSS2 works… The padding, border and then margin are drawn around the size you specify it. Just measure all the sizes you see on the browser with a pixel counter… If you say setSize(80,20) then we have to completely calculate what the real size that we say to the browser. We have to extract the border and the paddings from it. So most likely we sent 76,16 to the browser as its size. This is really horrible of CSS and that is what it is really hard to get the exact same picture. This can be solved by using a CSS3 property or the property that Firefox already has specified that does the same and IE can be set in quirks mode then it also does it the CSS3 way. The only problem is that currently the Apple browser won’t do it.

ok

I just build a little test solution, showing the different types of elements in different variations (editable Yes/No, Default, empty or line border)

The conclusions I got form this are the following:
In general:

  • fields always are shown too large when they have a default border. When a specific border is specified, they are the right size.
  • Comboboxes are always displayed too small
  • (Line) borders on buttons do not show and button is shown too small
  • Labels are shown fine

IE 6.0 (Windows):

  • (Line) borders on Comboboxes are not drawn

FF 1.5 (Windows)

  • Default borders on rtf area, html area, calender field, image, radio and checkboxes differ from the default border on the other display types.

So, I can wait for RC2 to have a look or i can send you this test app so you can test for yourself.

BTW: I also noticed that onDataChange is not fired in the Webclient on comboBoxes, allthough, according to the Webfilter, onDataChange is a supported event.

Paul

Johan,

Thanks for fixing that disappearing foundset problem.

FYI, case 46844 I submitted is not fixed in this release.

onRecordEditStart doesn’t fire when i form is in a tabpanel.

This pretty much kills security on my solution, so I’m hoping it will be on the hit list for the next release candidate.

Thanks, greg.

Hi,

I’m trying to import a solution with same name & activate as next release.
But I couldn’t import the solution using Import button, it is asking for new name.

Also, I tried to import with Clean Import button. But it is asking for new style name. I’m using same style for all my solutions.

Can anyone explain me , what is the difference between “Import” & “Clean Import”? & How it is differ from “Import As” of previous version of servoy?

I have the same issue as Backer.

Also one other strange and dangerous thing is, when I was asked to enter a new style I cancelled the dialog and deleted the style and tried re-importing. Once the import was finished I have lost all my styles in the repository. I am not sure what went wrong and how, but there seems to be a problem in the latest rc.

When saving styles from the editor it takes atleast 6 seconds to save. It happens eventhough there are less than 10 lines. This was not the previous behaviour.

Saving methods work fine.