Servoy 3.5.2

Servoy announcements

Servoy 3.5.2

Postby svroemisse » Fri Oct 26, 2007 4:21 pm

We announce the immediate availability of Servoy 3.5.2

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

This version will be available shortly through auto update for users of versions later than 3.5 b2 (check via help menu -> check for new version)

Changes
[new] new documentation
[new] text orientation can be specified in solution settings

[enh] workaround to enable Servoy Smart Client to work with an upcoming popular operating system
[enh] possibility to override error and page expired web client page, see below
[enh] optional parameter "language" to the application.showI18NDialog(...)
[enh] web client support for navigator styles, see below
[enh] added child nodes sorting support to DBTreeView bean, see below
[enh] sort command will also be called for labels in table view components without a data provider

[fix] Servoy windows (smart client/help/editor) are now able to remember their last location and state (maximized or not) correctly even when using multiple monitors/displays
[fix] standard servoy modal dialogs (not servoy user dialogs) will always appear on top of their parent window
[fix] dialog bounds are saved in .properties file only if they are needed
[fix] when creating a new global method while being on a module form, the global will be created in the module instead of in the main solution
[fix] print preview from web client did not work in Safari, at least Safari for Windows
[fix] in the onLoad method for instanced forms, application.getMethodTriggerFormName() did not work correctly (gave back the name of the initial form not the instanced one)
[fix] printing a script from developer
[fix] in Sybase 10, the string_rtruncation option has a deafult value of ON, whereas =< Sybase 9 had it set to OFF by default. This setting indicates to generate an exception when using the CAST command and a certain situation occurs. In Sybase 9 and before, the exception would be ignored by default, in Sybase 10 it's raised. Due to this, Sample Data imports can fail in Sybase 10
[fix] exception when the primary key is a stored calculation
[fix] checkbox field not properly initialized when database value is null
[fix] avoid refresh when expanding/collapsing DBTreeView
[fix] multi developer deadlock fix
[fix] web client shows disabled tabs incorrectly
[fix] editing of large tableviews: selection had strange behavior
[fix] when calling readonly(...) while in edit mode, listview would stay in edit mode
[fix] image media field in tableview did not fire the onAction method
[fix] support to move files over multiple filesystems with file plugin
[fix] security.getUserName(...) will only return the current user name if no arguments are given; null argument will return null
[fix] exception when executing calculation that fails
[fix] error in creating repository on mysql5 database, switching to mediumtext when column is longer than 255 (same behaviour as mysql4) to prevent "row size too big" error
[fix] loading a foundset with a dataset of PKs could result in a conversion type error
[fix] unrelate(...) on related foundsets kept the sql join
[fix] error in printing when subsummary has more than three GroupByFields
[fix] threading problem in schedule plugin when used from batch processor

Changes in servoy_sample_crm
[enh] Removed the dialog tabpanel "workaround" - and changed all dialogs to native Servoy modal dialogs - so everything is web compatible.
[enh] Invoices with a CLOSED status are now not editable - and you are alerted when you click the "Edit" button
[enh] When you mark an CLOSED status invoice as OPEN, you can edit all the items
[enh] Added invoice status to the list of invoices displayed on the product

[chg] Removed the global functions that disabled the screen prior to the "fake" dialog calls - as they are no longer necessary with "real" dialogs
[chg] Upated the "edit" routines on all the main forms - so that checkboxes are editable in the Web Client

[fix] Updated the svy_mod solution to remove extra global methods that were no longer being referenced
[fix] Updated the global methods that opened the dialogs - there were too many arguments being passed and in the wrong order - causing strange results
[fix] Modified the svyWebCrm style to include "white" background fields - for checkboxes so they wouldn't be colored grey after editing on contacts and invoices.
[fix] Changed sort of existing orders on products form to sort by order id
[fix] Set the navigation bar tabpanel to transparent on all the forms - to avoid the occassional grey bar on redraw of screen
[fix] Changed the date and number formatting on orders, contacts, companies to be US format - and not show the time on date fields

DBTreeView bean child nodes sorting support
The DBTreeView bean now allows sorting the child nodes through the bindNodeChildSortDataProvider(sort_column_provider) function. Use this function to set the name of a calculation. The calculation should return a string of the form <column name> <sort order>. The children will be sorted on the column and in the order returned by this calculation.

Overriding error- and page expired pages
By using application.setUserProperty(...), the error page and page expired pages can now be set on a per-user basis. These properties are servoy.webclient.error.page and servoy.webclient.pageexpired.page, respectively.These override the properties by the same name from the admin page. The defaults must be set in the admin page for the user properties to work.

Style support for navigator
The default navigator can now be styled using the classes navigatornumber, navigatornext, navigatorprev, navigatorfirst and navigatorlast.
Example:
Code: Select all
.navigatornumber
{
   font: 10pt "Arial";
}

.navigatornext
{
   display: none;
}

.navigatorprev
{
   display: none;
}

.navigatorfirst
{
   display: none;
}

.navigatorlast
{
   display: none;
}



Previous release
http://forum.servoy.com/viewtopic.php?t=9105
Last edited by svroemisse on Fri Nov 02, 2007 10:09 am, edited 1 time in total.
Sandor Vroemisse
Servoy
User avatar
svroemisse
 
Posts: 171
Joined: Tue Dec 12, 2006 12:37 pm
Location: Amersfoort, NL

Postby MSibai » Sun Oct 28, 2007 8:37 am

[new] text orientation can be specified in solution settings

This is really working, thank you Servoy.
Not applied to the Form, Navigator and toolbars (Minor Issue).
And I 'll create a feature request to have this orientation functionality to be overrided by each field/object.
Mohamad Sibai
http://www.Nothom.Com
User avatar
MSibai
 
Posts: 145
Joined: Tue Dec 05, 2006 7:17 am
Location: Saudi Arabia

Postby Westy » Sun Oct 28, 2007 11:48 pm

How do I upgrade a solution from Servoy 3.1.7-build 411 to Servoy 3.5.2?

I would prefer to stay with Sybase 9 initially, to minimize the variables in case something should go wrong. From the instructions it appears that the only way to stay with Sybase 9 is to perform incremental Servoy updates. However, from Servoy 3.1.7-build 411 it appears that there are no more incremental updates available.

How do I make the leap from where I am to where I need to be?

Dean
Westy
 
Posts: 835
Joined: Fri Feb 13, 2004 5:27 am
Location: Lynnfield, Massachusetts USA

Postby svroemisse » Mon Oct 29, 2007 9:39 am

Westy wrote:How do I upgrade a solution from Servoy 3.1.7-build 411 to Servoy 3.5.2? I would prefer to stay with Sybase 9 initially


Theoretically, you should be able to do a fresh install of 3.5.2 and use the old database with it. The repository will need to be upgraded, however - so be sure to make a backup of the database first.
Sandor Vroemisse
Servoy
User avatar
svroemisse
 
Posts: 171
Joined: Tue Dec 12, 2006 12:37 pm
Location: Amersfoort, NL

Postby Westy » Mon Oct 29, 2007 2:28 pm

svroemisse wrote:The repository will need to be upgraded, however - so be sure to make a backup of the database first.


Hi Sandor,

What is the suggested procedure for upgrading the repository?

Dean
Westy
 
Posts: 835
Joined: Fri Feb 13, 2004 5:27 am
Location: Lynnfield, Massachusetts USA

Postby martinh » Mon Oct 29, 2007 2:35 pm

The DBTreeView bean now allows sorting the child nodes through the bindNodeChildSortDataProvider(sort_column_provider) function. Use this function to set the name of a calculation. The calculation should return a string of the form <column name> <sort order>. The children will be sorted on the column and in the order returned by this calculation.


Are you sure this works in 3.5.2? It still reacts as in 3.5.1 even when I added the bindNodeChildSortDataProvider('column_order asc') method.
Or is there some particular moment when this method has to be set? For example before or after the loadrecords into the treeview?
Martin
------------------------------------------------
Servoy Developer
Version 5.2.10/5.2.13
Java version 1.6 update 31
Database SQL Server 2008 R2
martinh
 
Posts: 857
Joined: Wed May 09, 2007 5:34 pm
Location: Belgium

Postby svroemisse » Mon Oct 29, 2007 3:21 pm

Westy wrote:What is the suggested procedure for upgrading the repository?


Developer will prompt to perform a repository upgrade. When you click 'yes', it will do the rest.

Servoy Server will simply fail to launch if the repository has not been upgraded. In order to upgrade the repository, issue the following command from your Servoy Servers' direcory:
Code: Select all
servoy_server.bat -upgradeRepository


Servoy Server will upgrade the repository and quit. Next, you can launch Servoy Server like you're used to.

Again, please make backups before you begin. And make sure there's no Servoy instance running from the repository you're upgrading.
Sandor Vroemisse
Servoy
User avatar
svroemisse
 
Posts: 171
Joined: Tue Dec 12, 2006 12:37 pm
Location: Amersfoort, NL

Postby svroemisse » Mon Oct 29, 2007 3:32 pm

martinh wrote:Are you sure this works in 3.5.2? It still reacts as in 3.5.1 even when I added the bindNodeChildSortDataProvider('column_order asc') method.
Or is there some particular moment when this method has to be set? For example before or after the loadrecords into the treeview?


Indeed, there is: this should be set before setting the root nodes.
Sandor Vroemisse
Servoy
User avatar
svroemisse
 
Posts: 171
Joined: Tue Dec 12, 2006 12:37 pm
Location: Amersfoort, NL

Postby Westy » Mon Oct 29, 2007 3:46 pm

Theoretically, you should be able to do a fresh install of 3.5.2 and use the old database with it.

I just did a fresh install with the Servoy installer "database" option unchecked. Then I pasted in my Sybase 9 database folder. Then I pasted in my prior sybase_db folder and my prior servoy.properties file. When I double-click servoy_developer.jar I get the following:

java.sql.SQLException: JDBC Driver 'com.sybase.jdbc2.jdbc.SybDriver' not found in classpath or drivers directory : java.lang.ClassNotFoundException: com.sybase.jdbc2.jdbc.SybDriver com.sybase.jdbc2.jdbc.SybDriver


If I do the above except use the new servoy.properties file instead of the old one, then I get:

org.apache.commons.dbcp.DbcpException: java.sql.SQLException: JZ00L: Login failed. Examine the SQLWarnings chained to this exception for the reason(s).
java.sql.SQLException: JZ00L: Login failed. Examine the SQLWarnings chained to this exception for the reason(s).


What to do?

Dean
Westy
 
Posts: 835
Joined: Fri Feb 13, 2004 5:27 am
Location: Lynnfield, Massachusetts USA

Postby Westy » Mon Oct 29, 2007 8:09 pm

I found the solution as follows:

1. Went to Edit/Preferences/DB Servers
2. For each connection changed driver name

from:
com.sybase.jdbc2.jdbc.SybDriver
to:
com.sybase.jdbc3.jdbc.SybDriver

Now Servoy 3.5.2-build 515 is up and running.

Dean
Westy
 
Posts: 835
Joined: Fri Feb 13, 2004 5:27 am
Location: Lynnfield, Massachusetts USA

Postby Karel Broer » Mon Oct 29, 2007 10:28 pm

Thank you Servoyians for your time and effort to release software that's almost too much fun to work with :) !

I have an issue though with importing my 3.1.7 solution into a clean 3.5.2 install. When importing my solution into the new repository, I get this error message:

com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'media_data' at row 1


The import stops after closing the error dialog and nothing is imported.

Log file says this:
2007-10-29 21:23:57,602 ERROR [TaskExecuter[1]] com.servoy.j2db.util.Debug - Throwable
com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'media_data' at row 1
at com.servoy.j2db.persistence.p.a(Unknown Source)
at com.servoy.j2db.persistence.XMLImporter.importFromJarFile(Unknown Source)
at com.servoy.j2db.develop.i$6.run(Unknown Source)
at com.servoy.j2db.util.aq.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'media_data' at row 1
at com.servoy.j2db.persistence.Repository.saveBlob(Unknown Source)
at com.servoy.j2db.persistence.Repository.saveBlob(Unknown Source)
at com.servoy.j2db.persistence.p.a(Unknown Source)
... 5 more
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'media_data' at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2939)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1268)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:843)
at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.servoy.j2db.persistence.datasource.p.invoke(Unknown Source)
at $Proxy1.execute(Unknown Source)
at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:230)
at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:230)
at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:230)
... 8 more
2007-10-29 21:23:57,602 ERROR [TaskExecuter[1]] com.servoy.j2db.util.Debug - com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'media_data' at row 1

2007-10-29 21:24:02,821 ERROR [AWT-EventQueue-0] com.servoy.j2db.util.Debug - Deleting unreferenced blobs


Servoy Developer
Version 3.5.2-build 515
Java version 1.6.0_03-b05 (Windows XP)
MySQL 5.0.27
Karel Broer
ServoyCamp - http://www.servoycamp.com
User avatar
Karel Broer
 
Posts: 779
Joined: Mon May 03, 2004 12:49 am
Location: Doetinchem

Postby Harjo » Mon Oct 29, 2007 11:39 pm

Karel, did you adjust your max packet size in your mySQL db?
Harjo Kompagnie
Direct ICT / Servoy Hosting / ServoyCamp
Servoy Certified Developer
Servoy Valued Professional
SAN Developer
User avatar
Harjo
 
Posts: 4286
Joined: Fri Apr 25, 2003 11:42 pm
Location: DEN HAM OV, The Netherlands

Postby Karel Broer » Tue Oct 30, 2007 12:31 pm

HJK wrote:Karel, did you adjust your max packet size in your mySQL db?

Yes I did. Max packet size is set to 64M.
Case created.
Karel Broer
ServoyCamp - http://www.servoycamp.com
User avatar
Karel Broer
 
Posts: 779
Joined: Mon May 03, 2004 12:49 am
Location: Doetinchem

Postby rgansevles » Tue Oct 30, 2007 4:19 pm

Karel,

Is it possible if you attach the solution to a case in our support system?

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

Postby grahamg » Tue Oct 30, 2007 4:40 pm

Rob

Have just had same issue
Debug - Throwable
com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'media_data' at row 1

trying to import a 3.5.1 solution from my MacBook to a Windows XP box with fresh 3.5.2 install.

Works OK if I use Sybase as repository but fails when Servoy trying to create the MySQL repository.

HTH
Graham Greensall
Worxinfo Ltd
www.worxinfo.com
grahamg
 
Posts: 735
Joined: Fri Oct 03, 2003 3:15 pm
Location: Midlands UK

Next

Return to Announcements

Who is online

Users browsing this forum: No registered users and 2 guests