Servoy 3.1.1 (pulled back)

Servoy announcements

Servoy 3.1.1 (pulled back)

Postby svroemisse » Fri Feb 09, 2007 5:32 pm

We announce the immediate availability of Servoy 3.1.1

Make a backup of your current Servoy installation (directory and database) before installing.

This version will also be available through auto update shortly for 3.x.x users (check via help menu -> check for new version)

Changes:
[fix] fixed 'move code' on the New Record command in the FOUNDSET node
[fix] the server wouldn't be synchronized properly with table/column changes when in multideveloper mode
[fix] scheduler could break when closing/restarting a solution
[fix] button to open calendar would disappear when datetime field set to non-editable
[fix] web client lost field contents under certain conditions
[fix] server template webdav access
[fix] race condition with foundsets during find/sql use
[fix] better detection of cross-references in calculations
[fix] paint problem for disabled scaled images
[fix] better support of old user_id to be used as user_uid
[fix] database bigint values limited to 2147483647

[chg] mail plugin change for Java 1.6 support
[chg] better database number type support
[chg] log the multideveloper tracking enabling/disabling

[enh] added case sensitive search option to Developer editor

Previous release:
http://forum.servoy.com/viewtopic.php?t=7610
Sandor Vroemisse
Servoy
User avatar
svroemisse
 
Posts: 171
Joined: Tue Dec 12, 2006 12:37 pm
Location: Amersfoort, NL

popupmenu appears to be broken in list views in 3.1.1

Postby dponti » Sat Feb 10, 2007 9:33 am

Hi -

Servoy 3.1.1 running developer on Mac OSX, server on Linux; clients running both OS X and Windows XP show the same problem...

I have buttons in the body part of list views that bring up pop-up menus using the popupmenu plug-in. This functionality works fine in 3.1. However, in 3.1.1, triggering such a pop-up menu produces the following error:

java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location

No code changes occurred between 3.1.1 and 3.1. In testing, I discovered this problem occurs with popup menus located in the body part of list views or in table views. Pop-up menus work fine in 3.1.1 if the form is in record view, or if the button that triggers the popup occurs in the header or footer parts of a list.

Obviously, upgrading to 3.1.1 is not an option for me at this point unless this behavior is fixed or someone suggests a workaround for list or table views.

Below is the stack trace from the developer log:

2007-02-09 22:53:42,678 ERROR [AWT-EventQueue-0] com.servoy.j2db.util.Debug - Throwable
org.mozilla.javascript.JavaScriptException: java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at org.mozilla.javascript.JavaScriptException.wrapException(JavaScriptException.java:71)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:368)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2031)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:94)
at com.servoy.j2db.scripting.e.call(Unknown Source)
at com.servoy.j2db.develop.debugger.k.a(Unknown Source)
at com.servoy.j2db.develop.debugger.k.access$100(Unknown Source)
at com.servoy.j2db.develop.debugger.k$2.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:1678)
at java.awt.Component.getLocationOnScreen(Component.java:1652)
at javax.swing.JPopupMenu.show(JPopupMenu.java:950)
at com.servoy.extensions.plugins.popupmenu.PopupMenuProvider.js_showPopupMenu(PopupMenuProvider.java:59)
at sun.reflect.GeneratedMethodAccessor336.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:334)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2031)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:94)
at com.servoy.j2db.scripting.e.call(Unknown Source)
at com.servoy.j2db.develop.debugger.k.a(Unknown Source)
at com.servoy.j2db.develop.debugger.k.access$100(Unknown Source)
at com.servoy.j2db.develop.debugger.k$2.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
dponti
 
Posts: 70
Joined: Wed Apr 14, 2004 9:39 pm
Location: Menlo Park, CA

3.1.1 the wrong number of records is loaded

Postby rioba » Sat Feb 10, 2007 9:15 pm

I have a BIG BIG problem with 3.1.1: the number of records loaded (or displayed) does not correspond to the number of records in the backend database.

I have a form with a tabpanel with 3 other forms, the corresponding tables have respectively 22, 109 and 8103 records. When I opended Servoy 3.1.1 just after upgrading, form A showed 3 records instead of 22. I tried to load again all records, but the result was the same. I relaunched Servoy and form A had the correct number of records (22), but form B showed 97 records instead of 109. Moving through the records of forms B other strange things happened, and a counter that usually shows the selected record number against the total number of records in the database, always showed wrong numers: eg record 15 of 49 (instead of 15 of 109 or, at least, 97 eg the number shown when I opened the form.

The third form (which refers to a table with 8103 record) always shows the correct total number of records, but when moving through the records going to the end of the selection, instead of reaching record 200, 400, 600 and so on, everytime I press the "fast forward" button, the end of selection is reached at 200, 219, 599, 790, 800, 999, 1190, 1200, 1399, 1590, 1600 ... 2799, 2990 and so on. As you can see there is a pattern in this sequence, pattern that could be reproduced even after relaunching Servoy.

In the same solution I have another form with no tabpanel connected to a table with 820 record. When I opened it showed the correct number of records, but when I moved through them the total number shown was 781. I tried to load all the records, and the records shown this time were 791 instead of 820.

The code worked perfectly with 2.2.x, 3.0 and 3.1. I tried to revert to 3.1 but I don't have the installer so I am now forced to use 3.0.2.

Any fast suggestion of what could have happened? I use Mac OS X 10.4.8 and MySql 5.0.27 on an Intel Mac
rioba
 
Posts: 242
Joined: Mon Aug 08, 2005 4:26 pm

Postby antonio » Sun Feb 11, 2007 12:51 am

Small question - with the
Code: Select all
application.closeSolution( [solution_to_load],  [method],  [argument])
function, in Developer you can pass the name of [solution_to_load], but the [method] and [argument] parameters seem to be ignored.

eg
Code: Select all
application.closeSolution( "UPDATER", "RunUpdate",  "5.4.3")

will close the current solution and open the UPDATER solution but will not run the global method 'RunUpdate'

Is this correct?
Tony
Servoy 8 - 2022.03 LTS
antonio
 
Posts: 638
Joined: Sun Apr 02, 2006 2:14 am
Location: Australia

Re: 3.1.1 the wrong number of records is loaded

Postby antonio » Sun Feb 11, 2007 4:19 am

rioba wrote:I have a BIG BIG problem with 3.1.1: the number of records loaded (or displayed) does not correspond to the number of records in the backend database.


I'm seeing the same problem. It was working fine immediately before installing 3.1.1.

I have a table with a few thousand records, with 580 where surgeon_id = "ET".
When I run this method

Code: Select all
controller.loadAllRecords()
controller.find()
surgeon_id = "ET"
controller.search()

application.output(controller.getMaxRecordIndex())

for ( var i = 1 ; i <= controller.getMaxRecordIndex() ; i++ )
{
   record = foundset.getRecord(i)
   record.report_grouping = record.date_of_service.getFullYear()
}

application.output(controller.getMaxRecordIndex())

controller.sort("report_grouping")
controller.showPrintPreview()



The first controller.getMaxRecordIndex() reports 200 records as expected

The second controller.getMaxRecordIndex() reports 253 records
i = 254 confirming that the loop has executed 253 times

showPrintPreview displays 580 records, half of them not updated by the method.

If I run the same method a second time, I get 297 records, but still see 580 in printPreview.
Tony
Servoy 8 - 2022.03 LTS
antonio
 
Posts: 638
Joined: Sun Apr 02, 2006 2:14 am
Location: Australia

Postby Thunder » Sun Feb 11, 2007 1:01 pm

I had exactly the same problem with 3.1.1. Thankfully I took the advice to back up my Servoy directory immediately before updating so have reverted back to 3.1 but this does seem to be a major problem.

My missing records were loadable but I had to continually find all to get to them. This will probably have had a terrible effect on related foundsets and calculations etc.

Bevil
Thunder
 
Posts: 431
Joined: Thu Apr 24, 2003 10:33 am
Location: London

Postby Harjo » Sun Feb 11, 2007 1:11 pm

just a question.

are you guys having the same problem when you use: foundset.getSize() instead of controller.getMaxRecordIndex() ?
Harjo Kompagnie
ServoyCamp
Servoy Certified Developer
Servoy Valued Professional
SAN Developer
Harjo
 
Posts: 4321
Joined: Fri Apr 25, 2003 11:42 pm
Location: DEN HAM OV, The Netherlands

Postby antonio » Sun Feb 11, 2007 1:44 pm

It behaves the same
application.output(controller.getMaxRecordIndex()) -- > 280
application.output(foundset.getSize()) -- > 280

printPreview ---> 580
Tony
Servoy 8 - 2022.03 LTS
antonio
 
Posts: 638
Joined: Sun Apr 02, 2006 2:14 am
Location: Australia

Postby john.allen » Mon Feb 12, 2007 10:21 am

I too was having the same problem. Upgraded to 3.1.1 late on Friday. Decided to try test running client from home which I have to do via VPN to our server. I kept getting all kinds of strange foundset counts. There are about 830 odd records and instead of the usual 200+, 400+, etc. I'd get something like 183, 350 or whatever. I'd restart and then sometimes the found counts would be back to normal. I also noticed the the regular (default) 'sort' of the records wasn't acting the same as there would be 'missing' records when the found count wasn't the same. It was almost as though it didn't 'find' certain primary keys and they were omitted in some way from the foundset.

I didn't think too much about it at the time thinking it was something to do with my network connection but now I realize I was experiencing the same thing everyone else was.
John Allen
Stanford University
john.allen
 
Posts: 515
Joined: Wed Jul 02, 2003 10:07 pm
Location: Stanford CA USA

Postby jcompagner » Mon Feb 12, 2007 12:36 pm

dponti:
3.1.2 will fix that illegal state exception when showing a popup menu in a tableview.


the strange foundset counts will also be fixed in 3.1.2 that will be released today.
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8828
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Postby rgansevles » Mon Feb 12, 2007 12:43 pm

antonio wrote:
Code: Select all
application.closeSolution( [solution_to_load],  [method],  [argument])
function, in Developer you can pass the name of [solution_to_load], but the [method] and [argument] parameters seem to be ignored.


The startup method will not be started in developer.
In release 3.1.2 an exception is made for Servoy Off-line, the open method is called with arguments supplied.

Rob
Rob Gansevles
Servoy
User avatar
rgansevles
 
Posts: 1927
Joined: Wed Nov 15, 2006 6:17 pm
Location: Amersfoort, NL


Return to Announcements

Who is online

Users browsing this forum: No registered users and 13 guests