Page 1 of 3

Servoy 3.0 Beta 2

PostPosted: Wed Apr 05, 2006 9:17 pm
by Jan Blok
We announce the immediate availability of Servoy 3.0 Beta 2

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

Changes:
[add]-getAutoSave function on databaseManager
[add]-removeIndex function on (form) history
[enh]-many improves in webclient form output
[enh]-enter key and F3 both work to start searching when in find from within tabpanel
[enh]-better solution style translation to webclient css
[enh]-faster startup of text property editor
[enh]-made upload of jnlp file possible in server admin pages
[fix]-made webclient components compatible with richclient components for all javascript functions

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

PostPosted: Wed Apr 05, 2006 10:45 pm
by jcompagner
see also: http://forum.servoy.com/viewtopic.php?p=30129 for another enhancement for the onDataChange event.

PostPosted: Thu Apr 06, 2006 10:52 am
by pbakker
Hi,

Openend a solution in the webclient and noticed a couple of things:

- Just starting developer, I see the following error in the console:
Code: Select all
Error occured trying to load: C:\Program Files\Servoy 3.0b1\plugins\jakarta-poi\jakarta-poi-1.5.1-final.jar, error: erro
r in opening zip file


- Opening a solution in the WebClient, I see the following warning:
Code: Select all
2006-04-06 10:30:43,418 WARN [http-8080-Processor3] wicket.protocol.http.MockServletContext - WARNING: The webapp root d
irectory is invalid:


- Opening the solutin in the WebClient, I get the following error:
Code: Select all
Warning: global.setValueListDefaultValue is not defined in the globals, dynamic media global is created
null
Kan de volgende method niet uitvoeren: 'onShow'
TypeError: undefined is not a function. (onShow; line 9)
TypeError: undefined is not a function. (onShow; line 9)
        at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:584)
        at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:544)
        at org.mozilla.javascript.NativeGlobal.typeError1(NativeGlobal.java:554)
        at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1239)
        at org.mozilla.javascript.gen.c3.call(onShow:9)
        at com.servoy.j2db.scripting.f.executeFunction(Unknown Source)
        at com.servoy.j2db.FormController.a(Unknown Source)
        at com.servoy.j2db.FormController.a(Unknown Source)
        at com.servoy.j2db.FormController.executeOnShowMethod(Unknown Source)
        at com.servoy.j2db.FormManager$3.run(Unknown Source).....

This error is not displayed when opening the same solution in Developer. I tried to find the onShow method and line 9 in it, but none of the onShow methods I have have a line 9 with code. Only one onShow method has 9 lines. Here's it's content:
Code: Select all
if (foundset.getSize() == 0)
{
   //disable Main Tab, untill a SubScription has been selected by Search
   for ( var i = 1 ; i <= elements.main.getMaxTabIndex(); i++ )
   {
      elements.main.setTabEnabled(i,false);
   }
   forms[elements.main.getSelectedTabFormName()].controller.enabled = false;
}

Am I using functions here that are not supported in the WebClient? I thought it would all work due to Jan's comment in the release notes of b2:
[fix]-made webclient components compatible with richclient components for all javascript functions


- I still see quite a few differences in layout between the rich client and the webclient.
    - TabLess TabPanels seem to differ in size, so in the WebClient they are displayed with scrollbars, whereas in the rich client, everything is sized in such a way that they do not show
    - If there are too many tabs on a tabpanel to show the tabs on one line, there can be a funny break of the last tab on one of the lines, if the tabtext contains a ' ' (space). If the last tab on a line has a space in it's tabtext, it can happen that the first word is displayed as the last tab on the line and the next word is displayed as another tab on the next line
    - In FireFox, the height of Comboboxes is less than it should be, so the text inside is not properly displayed (works fine in IE 6.0)
    - ComboBoxes are not as wide as they ought to be (seems like about 7 pixels are missing on the right)
    - Transparency on (transparent) gif images doesn't seem to work in IE 6.0
    - Text on buttons that fits easily in the rich client, doesn't fit in the webclient.


Should I send some screenshot and possible the solution somewhere?

Besides these layout issues, controller.enabled and setTabEnabled do not seem to work in my solution, but that can also be related to the error described above in the onShow command (maybe, due to the error, the code is not fired at all).

Regards,

Paul

PostPosted: Thu Apr 06, 2006 11:11 am
by Jan Blok
pbakker wrote:- Just starting developer, I see the following error in the console:
Code: Select all
Error occured trying to load: C:\Program Files\Servoy 3.0b1\plugins\jakarta-poi\jakarta-poi-1.5.1-final.jar, error: erro
r in opening zip file


We have replaces an old version of POI with a new one, but that means the file name changed.
Our update process does not allow us to delete files, instead we push a file of 0 bytes

Old jar jakarta-poi-1.5.1-final.jar is now 0 bytes
New jar jakarta-poi.jar is the one in use

This message is harmless, everything is working..., to get rid of the message you can delete jakarta-poi-1.5.1-final.jar file.

PostPosted: Thu Apr 06, 2006 11:16 am
by Jan Blok
pbakker wrote:- Opening the solutin in the WebClient, I get the following error:[code]Warning: global.setValueListDefaultValue is not defined in the globals, dynamic media global is created

We build in a warning to warn you, when in scripting you are referring to an non existing global.
And tell you that we dynamicly create a global by that name as with type media, as we do since Servoy version 1.1

PostPosted: Thu Apr 06, 2006 11:19 am
by pbakker
We build in a warning to warn you, when in scripting you are referring to an non existing global.
And tell you that we dynamicly create a global by that name as with type media, as we do since Servoy version 1.1


But, shouldn't I get the same message when starting the same solution in developer? In developer, it works fine, no errors and/or warnings.

Paul

PostPosted: Thu Apr 06, 2006 11:22 am
by Jan Blok
pbakker wrote:Kan de volgende method niet uitvoeren: 'onShow'
TypeError: undefined is not a function. (onShow; line 9)
TypeError: undefined is not a function. (onShow; line 9)
at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:584)
at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:544)
at org.mozilla.javascript.NativeGlobal.typeError1(NativeGlobal.java:554)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1239)
at org.mozilla.javascript.gen.c3.call(onShow:9)
at com.servoy.j2db.scripting.f.executeFunction(Unknown Source)
at com.servoy.j2db.FormController.a(Unknown Source)
at com.servoy.j2db.FormController.a(Unknown Source)
at com.servoy.j2db.FormController.executeOnShowMethod(Unknown Source)
at com.servoy.j2db.FormManager$3.run(Unknown Source).....[/code]
This error is not displayed when opening the same solution in Developer. I tried to find the onShow method and line 9 in it, but none of the onShow methods I have have a line 9 with code. Only one onShow method has 9 lines. Here's it's content:
Code: Select all
if (foundset.getSize() == 0)
{
   //disable Main Tab, untill a SubScription has been selected by Search
   for ( var i = 1 ; i <= elements.main.getMaxTabIndex(); i++ )
   {
      elements.main.setTabEnabled(i,false);
   }
   forms[elements.main.getSelectedTabFormName()].controller.enabled = false;
}

Am I using functions here that are not supported in the WebClient? I thought it would all work due to Jan's comment in the release notes of b2:
[fix]-made webclient components compatible with richclient components for all javascript functions



Any change you could check if:
elements.main.getSelectedTabFormName()
does return something? with application.output for example
if it does not please file a case, see http://forum.servoy.com/viewtopic.php?t=6062

PostPosted: Thu Apr 06, 2006 11:23 am
by jcompagner
- Opening a solution in the WebClient, I see the following warning:
Code:
2006-04-06 10:30:43,418 WARN [http-8080-Processor3] wicket.protocol.http.MockServletContext - WARNING: The webapp root d
irectory is invalid:


Don't have to worry about this log entry. It will be gone in the next release but it is now just a small warning that doesn't affect anything.

PostPosted: Thu Apr 06, 2006 11:24 am
by Jan Blok
pbakker wrote:
We build in a warning to warn you, when in scripting you are referring to an non existing global.
And tell you that we dynamicly create a global by that name as with type media, as we do since Servoy version 1.1


But, shouldn't I get the same message when starting the same solution in developer? In developer, it works fine, no errors and/or warnings.

Paul


They are also present in developer, check the warning icon on your status bar (and double click this)

PostPosted: Thu Apr 06, 2006 11:27 am
by Jan Blok
pbakker wrote:- I still see quite a few differences in layout between the rich client and the webclient.
    - TabLess TabPanels seem to differ in size, so in the WebClient they are displayed with scrollbars, whereas in the rich client, everything is sized in such a way that they do not show
    - If there are too many tabs on a tabpanel to show the tabs on one line, there can be a funny break of the last tab on one of the lines, if the tabtext contains a ' ' (space). If the last tab on a line has a space in it's tabtext, it can happen that the first word is displayed as the last tab on the line and the next word is displayed as another tab on the next line
    - In FireFox, the height of Comboboxes is less than it should be, so the text inside is not properly displayed (works fine in IE 6.0)
    - ComboBoxes are not as wide as they ought to be (seems like about 7 pixels are missing on the right)
    - Transparency on (transparent) gif images doesn't seem to work in IE 6.0
    - Text on buttons that fits easily in the rich client, doesn't fit in the webclient.

Should I send some screenshot and possible the solution somewhere?

Yes please sent/file a simple sample solution in our support system, see http://forum.servoy.com/viewtopic.php?t=6062

PostPosted: Thu Apr 06, 2006 11:47 am
by pbakker
They are also present in developer, check the warning icon on your status bar (and double click this)


Jan, In Developer, no errors occur. I also started the same solution in Servoy Client: No problems either. It seesm to only happen in the WebClient.

I altered the code of the onsHow method the following way:
Code: Select all
application.output('FoundSet Size: '+foundset.getSize());
if (foundset.getSize() == 0)
{
   //disable Main Tab, untill a SubScription has been selected by Search
   for ( var i = 1 ; i <= elements.main.getMaxTabIndex(); i++ )
   {
      application.output('MaxTabIndex: '+elements.main.getMaxTabIndex());
      elements.main.setTabEnabled(i,false);
   }
   application.output('SelectedTabFormName: '+elements.main.getSelectedTabFormName());
   forms[elements.main.getSelectedTabFormName()].controller.enabled = false;
}


In the Console, I now see the following logging:
Code: Select all
Warning: global.setValueListDefaultValue is not defined in the globals, dynamic media global is created
null
WebClient: FoundSet Size: 0
WebClient: MaxTabIndex: 5
WebClient: MaxTabIndex: 5
WebClient: MaxTabIndex: 5
WebClient: MaxTabIndex: 5
WebClient: MaxTabIndex: 5
WebClient: End of Loop
Kan de volgende method niet uitvoeren: 'onShow'
TypeError: undefined is not a function. (onShow; line 12)
TypeError: undefined is not a function. (onShow; line 12)
        at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:584)
        at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:544)
        at org.mozilla.javascript.NativeGlobal.typeError1(NativeGlobal.java:554)
        at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1239)
        at org.mozilla.javascript.gen.c8.call(onShow:12)
        at com.servoy.j2db.scripting.f.executeFunction(Unknown Source)
        at com.servoy.j2db.FormController.a(Unknown Source)
        at com.servoy.j2db.FormController.a(Unknown Source)
        at com.servoy.j2db.FormController.executeOnShowMethod(Unknown Source)
        at com.servoy.j2db.FormManager$3.run(Unknown Source)


I'll file my solution in the support system, so you can test this and see the layout issues.

Tnx for the quick respons.

Paul

PostPosted: Thu Apr 06, 2006 12:38 pm
by jcompagner
application.output('SelectedTabFormName: '+elements.main.getSelectedTabFormName());


Do you see getSelectedTabFormName() in the method editor?
It is depricated you should use:

elements.main.getTabFormNameAt(elements.main.getTabIndex())

depricated stuff are not supported anymore in the webclient. So you have to use the new onces.

PostPosted: Thu Apr 06, 2006 12:52 pm
by pbakker
ok, makes sense then.

This solution was created in 2.2.x and I didn't think about such a thing at all.

Paul

PostPosted: Thu Apr 06, 2006 1:12 pm
by pbakker
OK, with the depreciated code issue solved, I now know that the onSHow method is executed in the webclient.

But, the following code results in nothing...
Code: Select all
application.output(foundset.getSize());
if (foundset.getSize() == 0)
{
   //disable Main Tab, untill a SubScription has been selected by Search
   for ( var i = 1 ; i <= elements.main.getMaxTabIndex(); i++ )
   {
      elements.main.setTabEnabled(i,false);
   }
   forms[elements.main.getTabFormNameAt(elements.main.tabIndex)].controller.enabled = false;
}

What should happen is that all the tabs are disabled and the form in the active tab is also disabled. But what happens is that all tabs and the shown form are still enabled. Aren't these fucntions supported (yet)?

The point of the following error also still stands:
Warning: global.setValueListDefaultValue is not defined in the globals, dynamic media global is created

Like I said, this error is not given in Developer nor the rich client. I also checked my code and a variable with the name "setValueListDefaultValue" is never declared. I do have a global method with this name, which is called and accoridng to the output on the webpage, it is called correctly.

All this behavior can be seen in the sample solution I attached to the cas ein the support system.

Paul

Can't get beta2

PostPosted: Thu Apr 06, 2006 2:23 pm
by mmcmanus
Tried to auto update and it said no new updates were availlable. The download only gave me beta 1. Was the update pulled or am I just missing something?