Servoy 2.2rc3

We announce the immediate availability of Servoy 2.2rc3

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

This version is available through auto update (if you have beta update notify enabled, meaning having the line ‘wantsBetaCodeNotifies=true’ in your servoy.properties file)

Previous beta build info

[fix]-label/button rollover when setting the normal icon on click
[fix]-default sort when using a related sort http://forum.servoy.com/viewtopic.php?t=2499&start=15
[fix]-record locked message when you have the lock yourself.
[fix]-after lock is gained it is now guaranteed that you are working with the latest data.
[fix]-setFont on a htmlarea field is using that font as it default font.
[fix]-tooltips works now with a check/radio value list http://forum.servoy.com/viewtopic.php?p=19605#19605
[fix]-elements.length was wrong when having a portal on the form http://forum.servoy.com/viewtopic.php?t=4054
[fix]-for onHide problems with a second form in a dialog http://forum.servoy.com/viewtopic.php?t=3724
[fix]-foundsetUpdater when updating a column to null when there is no where part http://forum.servoy.com/viewtopic.php?t=3948
[fix]-methods in methods menu can be started in design mode
[fix]-global multikey non-equals relation problem icw null value in globals
[fix]-headless client now runs correctly when using java.awt.headless JVM option
[fix]-classloading of bean and plugins are now the same as in client
[fix]-no longer blob/media column select, but do true lazy blob retrieve from db
[enh]-i18n.setLocale() changes are now seen in the menu
[enh]-dataset.getAsText(…) cvs/tab generation,see sample code
[enh]-file/char encoding option in text export plugin
[enh]-default UTF16 char encoding in excel export plugin
[enh]-made mail plugin char encoding an option in admin page
[enh]-better code suggestion for string concat http://forum.servoy.com/viewtopic.php?t=195&start=15
[enh]-special comment tags support in the textarea and use color of special cases http://forum.servoy.com/viewtopic.php?t=4068
[new]-windows service software version in full Servoy installer
[new]-postgress driver bundled in full Servoy installer

plugin developers:
[enh]-IClientPluginAccess.getSolutionName() to retrieve the solution name, returns null if none open

It looks like a lot of hard work has been done to give us these latest fixes and enhancements. Thank you to everyone at Servoy!

One question. What does the following mean?

Jan Blok:
[new]-new windows service software version in full Servoy installer

That the software required for running the servoy server as windows service is updated.

And how is the property “Ignore” under form/controller different from “None”?

Ah thats something small we forgot to mension… it means the form defines no controller and leaves the one which is set by a previous form.

Great work, guys!

Question…I know folks have asked for control over the display of the black vertical bar that indicates the selected record in listviews. With rc3, the bar is now gone from many (but not all) of our listviews. Can’t for the life of me see what is controlling whether the bar shows or not. What does?

on the forms you don’t see it, do you have a label or an other component completely at the left? (that is not transparent)

I think this is a bug. Just figured out what’s controlling it…if you set a background color other than ‘default’ on the form Body, the vertical rectangle indicating selected record disappears.

Additional info…the space occupied by the veritcal bar is not ‘visible’ either with Body background set to other than ‘Default’–in other words, all elements on the body shift to the left when you change background color.

Still more…I have two cases: List views that show the selected-record vertical rectangle and list views that don’t.

  • For the ones that do show it, I can make it disappear by changing the body background color, per my previous post.
  • For the ones that do not show it, changing the background color has no effect–Indeed, so far, I can’t get it to show no matter what changes I make.

the background is set problem is fixed.
Now the selection bar is painted.

You still are able to hide it (by accident or not) when you have a component completely at the left and as big as the body.
Then you also will not see it.

with the alterations of the coloring of code in Servoy Editor, the following error was introduced:

If you have some code and you comment it out wit “//” and lateronwards remove the “//”, only part of the uncommented row of code goes back to the proper color. Everything behind a “.”, “(”, “)” or “;” seems to stay dark green.

Paul

yes know problem. And not easy fixable.
You have to reopen the method for now to get that completely right.

Thanks, Johan. Fix will be in rc4?

yes

Servoy Developer
Version R2 2.2rc3-build 321
Java version 1.4.2_06-b03 (Windows XP)

Error message: application.closeFormDialog() triggers java.lang.NullPointerException (SaveCloseForm, line 3)

Have a global method - SaveCloseForm - with just two lines that is triggered by Save & Close button on number of popup dialogs called with application.showFormInDialog:

currentcontroller.saveData();
application.closeFormDialog();

During testing with rc2 the error message started showing. Tried rebuilding Form and problem disapeared for time then came back, deleted all records & reset PK’s - again was fine for a few times then started failing again. Switched on Debugger (with no break points) and problem went away until debugger switched off.

Upgraded to rc3 but still have problem.

Does anyone have any clues ??

Thanks

Graham Greensall
Worxinfo Ltd

Do you see anything in youre console? (A stacktrace)

Hi Johan

Thanks for quick response - following is clip from .log.txt - hope this helps

Graham Greensall


Loading servoy.properties from C:\Documents and Settings\Graham Greensall\servoy.propertiesLoading - DoneUsing RMI registry on port 1099org.mozilla.javascript.JavaScriptException: java.lang.NullPointerExceptionorg.mozilla.javascript.JavaScriptException: java.lang.NullPointerException
at org.mozilla.javascript.JavaScriptException.wrapException(JavaScriptException.java:71)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:323)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1242)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:1942)
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.executeFunction(Unknown Source)
at com.servoy.j2db.FormPanel.a(Unknown Source)
at com.servoy.j2db.FormPanel.a(Unknown Source)
at com.servoy.j2db.FormPanel$b.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.Dialog$1.run(Unknown Source)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at com.servoy.j2db.util.b.setVisible(Unknown Source)
at com.servoy.j2db.k.setVisible(Unknown Source)
at com.servoy.j2db.k.a(Unknown Source)
at com.servoy.j2db.FormManager.a(Unknown Source)
at com.servoy.j2db.scripting.JSApplication.js_showFormInDialog(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:289)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1242)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:1942)
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.executeFunction(Unknown Source)
at com.servoy.j2db.FormPanel.a(Unknown Source)
at com.servoy.j2db.FormPanel.a(Unknown Source)
at com.servoy.j2db.FormPanel$b.a(Unknown Source)
at com.servoy.j2db.dataui.DataField.new(Unknown Source)
at com.servoy.j2db.dataui.DataField.access$1(Unknown Source)
at com.servoy.j2db.dataui.DataField$c.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.repostEvent(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Error message: application.closeFormDialog() triggers java.lang.NullPointerException (SaveCloseForm, line 3)

Further testing after computer reboot.

If I add/delete/change text or dates on the Dialog Form it saves/closes fine. If I just look at form and make no changes - always get error message.

Hope this helps

Graham Greensall

need to see the solution and some sample data.
The output doesn’t show enough info