Servoy 4.1.0 beta 5

Release notes for Servoy betas

Servoy 4.1.0 beta 5

Postby svroemisse » Mon Nov 03, 2008 4:44 pm

We are pleased to announce the immediate availability of Servoy 4.1.0 beta 5.

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

This version is available through the download page on the Servoy website (developer section). This version will also be available through auto update shortly.

Changes
[new] dataset as datasource via "dataset.createDataSource(...)", this results in the possibility to use forms created in solutionModel on any dataset
[new] solutionModel now allows for query and create relations
[new] solutionModel form variable support
[new] case 158142: databaseManager.getTableFilterParams(...)

[enh] case 167168: aggregate error markers generated for missing/disabled servers instead of hunderds of errors
[enh] case 168711: link with editor now expands the form node and makes the expanded node visible

[chg] minor: default value "" when creating global integer and number will result in: " = null" in the .js file (because non-initialized numeric vars default to 0 in Servoy instead of expected null)

[fix] case 148300,169287: "clean import" for non-shared solutions not working
[fix] case 161647, 168918, 165283, 161951: tooltip problems in web client, when tooltip is too close to the edge scrollbars appear and disappear continuously
[fix] case 163086: changes to style sheets not reflected in debug webclient
[fix] case 164729: white screens while waiting for Eclipse to catch up
[fix] case 164992: form editor freezes due to decorators
[fix] case 166391: styesheet margins don't work when border property of label is set to default
[fix] case 167741: simple label always anchors to the bottom in webclient
[fix] case 168485: when developer is not started as team server, the solution node on admin page gives an unclear message
[fix] case 168702: warnings for broken filestructure in developer show wrong path
[fix] case 168735: developer right-click on warning and select "Show In" results in a beep and the object does not get selected in the Solution Explorer
[fix] case 168998: more developer checks for duplicate element names on a form
[fix] case 169037: wrong HTML field display in web client table view
[fix] case 169039: "missing" column properties in column editor
[fix] case 169493: i18n in titled border labels not shown correctly in developer
[fix] case 169524: impossible to update stylesheet in developer

Known issues
- switching workspaces occasionally hangs developer
- still some small anchoring issues in web client; web client anchoring can be switched off via the 'servoy.webclient.enableAnchors' property in the servoy.properties config file, like: servoy.webclient.enableAnchors=false
- exception in smart client when using HTTP tunnel

Changes in previous release
Servoy 4.1.0 beta 4
Sandor Vroemisse
Servoy
User avatar
svroemisse
 
Posts: 171
Joined: Tue Dec 12, 2006 12:37 pm
Location: Amersfoort, NL

Re: Servoy 4.1.0 b5

Postby rgansevles » Mon Nov 03, 2008 5:21 pm

svroemisse wrote:[new] dataset as datasource via "dataset.createDataSource(...)", this results in the possibility to use forms created in solutionModel on any dataset

Here is a small example of a data set used in a form:

Code: Select all
var fname = "testform"
if (!forms[fname])
{
       // create dataset
       ds = databaseManager.createEmptyDataSet()
       ds.addColumn("x_id")
       ds.addColumn("bla t")
       ds.addRow([100, 'aap'])
       ds.addRow([101, 'noot'])
       ds.addRow([102, 'mies'])

      //Create a new data source, returns an uri that can be used to build forms on
      var uri = ds.createDataSource('mydata', [DM_COLUMNTYPE.INTEGER, DM_COLUMNTYPE.TEXT]);

      // create form
      var jsform = solutionModel.newForm(fname, uri, null, true, 300, 300);
      jsform.newTextField("x_id",100,100,100,20);
      jsform.newTextField("bla_t",100,130,100,20);
  }

  application.output(fname)
  forms[fname].controller.show()

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

Re: Servoy 4.1.0 beta 5

Postby Jan Aleman » Tue Nov 04, 2008 9:40 am

Essentially you can now create an on the fly form and base it on anything! For example on a query!

Code: Select all
function createformbyq()
{
   var query = 'select customerid, address, city, country  from customers';
   var dataset = databaseManager.getDataSetByQuery('example_data', query, null, 999);
   var uri = dataset.createDataSource('mydata2', [DM_COLUMNTYPE.TEXT, DM_COLUMNTYPE.TEXT, DM_COLUMNTYPE.TEXT, DM_COLUMNTYPE.TEXT]);
   var jsform = solutionModel.newForm('test', uri, null, true, 800, 600);
      jsform.newTextField("customerid",100,100,100,20);
      jsform.newTextField("address",100,130,100,20);
     jsform.newTextField("city",100,160,100,20);
     jsform.newTextField("country",100,190,100,20);   
     forms.test.controller.show()
}
Jan Aleman
Servoy
Jan Aleman
Site Admin
 
Posts: 2071
Joined: Wed Apr 23, 2003 9:49 pm
Location: Planet Earth

Re: Servoy 4.1.0 beta 5

Postby martinh » Thu Nov 06, 2008 2:51 pm

Two questions about 4.1

1) Does the above example also work for a webclient solution? Because in 3.5 all had to be fixed in webclient.

2) Will the SplitPane bean be available in webclient? Or a similar solution for splitpanes in webclient.
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

Re: Servoy 4.1.0 beta 5

Postby Jan Aleman » Thu Nov 06, 2008 3:07 pm

martinh wrote:Two questions about 4.1

1) Does the above example also work for a webclient solution? Because in 3.5 all had to be fixed in webclient.


Yes, it works in webclient too!
martinh wrote:2) Will the SplitPane bean be available in webclient? Or a similar solution for splitpanes in webclient.


Currently the splitplane does not work in webclient, we are still researching how to make it work.
Jan Aleman
Servoy
Jan Aleman
Site Admin
 
Posts: 2071
Joined: Wed Apr 23, 2003 9:49 pm
Location: Planet Earth

Re: Servoy 4.1.0 beta 5

Postby david » Thu Nov 06, 2008 9:07 pm

4.1 desperately needs a function to create a solutionModel form from a regular form to keep this whole deal from being a truckload of coding work. Something like:

Code: Select all
solutionModel.newForm(solutionModel.getForm('name'))


Alternately, you could give the solutionModel the ability to access and modify forms created with:

Code: Select all
application.createNewFormInstance("sourceForm", "newForm")


Or whatever. We just need something that allows us to use regular forms as templates to base solutionModel forms on.
David Workman, Kabootit

Image
Everything you need to build great apps with Servoy
User avatar
david
 
Posts: 1723
Joined: Thu Apr 24, 2003 4:18 pm
Location: Washington, D.C.

Re: Servoy 4.1.0 beta 5

Postby Jan Blok » Thu Nov 06, 2008 9:45 pm

I really wonder why you would need to "copy a form" at solution model level.
The solution model also exposes the "Extend" property on a form, which is way more powerful mechanism than "copy a form", just extend some form which has properties/elements/behaviour you want to see in/on/at other forms (and it saves a significant amount of memory at solution model side)

I suggest to have a real in depth look at the sample "servoy_sample_solutionModel" which is shipping with 4.1 versions (full install), this is the demo from ServoyWorld2008, and makes heavy use of "extends"

BTW solutionModel does allow to base sub-forms on different tables, which is not (yet) possible in current form designer.
Jan Blok
Servoy
Jan Blok
 
Posts: 2684
Joined: Mon Jun 23, 2003 11:15 am
Location: Amsterdam

Re: Servoy 4.1.0 beta 5

Postby david » Fri Nov 07, 2008 12:21 am

Yup, that's it. Sorry I missed it (I didn't see the demo app so was going from scratch).
David Workman, Kabootit

Image
Everything you need to build great apps with Servoy
User avatar
david
 
Posts: 1723
Joined: Thu Apr 24, 2003 4:18 pm
Location: Washington, D.C.

Re: Servoy 4.1.0 beta 5 - dead after update

Postby agiletortoise » Fri Nov 07, 2008 12:58 am

I have a test instance of Servoy running on Ubuntu 8.04 (headless VPS).

It was running 4.0.1 just fine. I ran the update "java -jar servoy_updater.jar -beta" up to 4.1b5, and now the server will not start, with the following log entry:

Code: Select all
0 [main] INFO com.servoy.j2db.util.Debug  - Loading servoy.properties from /home/greg/servoy_test/application_server/servoy.properties
200 [main] INFO com.servoy.j2db.util.Debug  - Loading - Done
Exception in thread "main" java.lang.IllegalAccessError: class com.servoy.j2db.scripting.InstanceJavaMembers cannot access its superclass org.mozilla.javascript.JavaMembers
   at java.lang.ClassLoader.defineClass1(Native Method)
   at java.lang.ClassLoader.defineClass(ClassLoader.java:637)
   at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
   at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
   at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
   at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336)
   at com.servoy.j2db.dataprocessing.FoundSet.<clinit>(FoundSet.java)
   at com.servoy.j2db.dataprocessing.ClientManager.<init>(ClientManager.java)
   at com.servoy.j2db.dataprocessing.SQLEngine.<init>(SQLEngine.java)
   at com.servoy.j2db.server.ApplicationServer.main(ApplicationServer.java)


Any ideas what to try?

greg.
Greg Pierce
Agile Tortoise
SAN Developer
http://www.agiletortoise.com
User avatar
agiletortoise
 
Posts: 278
Joined: Wed Oct 12, 2005 3:26 pm
Location: Texas, USA

Re: Servoy 4.1.0 beta 5

Postby agiletortoise » Fri Nov 07, 2008 4:38 am

FYI, I tried a clean install of 4.1b5 and got the same log message starting the server via ./servoy_server.sh

greg.
Greg Pierce
Agile Tortoise
SAN Developer
http://www.agiletortoise.com
User avatar
agiletortoise
 
Posts: 278
Joined: Wed Oct 12, 2005 3:26 pm
Location: Texas, USA

Re: Servoy 4.1.0 beta 5

Postby IT2Be » Fri Nov 07, 2008 8:48 am

Strange, this looks like a classpath issue or a missing library/jar but I can't imagine that you miss js.jar...
Marcel J.G. Trapman (IT2BE)
SAN partner - Freelance Java and Servoy
Servoy Components - IT2BE Plug-ins and Beans for Servoy
ServoyForge - Open Source Components for Servoy
User avatar
IT2Be
Servoy Expert
 
Posts: 4763
Joined: Tue Oct 14, 2003 7:09 pm
Location: Germany

Re: Servoy 4.1.0 beta 5

Postby rgansevles » Fri Nov 07, 2008 10:15 am

Greg,

It seems that you have an older version of js.jar in your classpath.
Maybe you can try adding -verbose:class to the java call in servoy_server.sh, it will log which class is loaded from which file.

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

Re: Servoy 4.1.0 beta 5

Postby agiletortoise » Fri Nov 07, 2008 4:30 pm

Thanks, Rob. Found the culprit using -verbose:class.

Something worth noting. The Open JRE package, at least for Ubuntu, has Rhino at "/usr/lib/jvm/java-6-openjdk/jre/lib/rhino.jar" in it's standard install. This was conflicting. I removed it and I'm back up and running.

greg.
Greg Pierce
Agile Tortoise
SAN Developer
http://www.agiletortoise.com
User avatar
agiletortoise
 
Posts: 278
Joined: Wed Oct 12, 2005 3:26 pm
Location: Texas, USA

Re: Servoy 4.1.0 beta 5

Postby agiletortoise » Sat Nov 22, 2008 12:10 am

Why does databaseManager.getTableFilterParams() return an object?

Looks like it gives back something like this:

{0: [paramsarray], 1:[paramsarray]}

Seems like that should just be an array of arrays?

greg.
Greg Pierce
Agile Tortoise
SAN Developer
http://www.agiletortoise.com
User avatar
agiletortoise
 
Posts: 278
Joined: Wed Oct 12, 2005 3:26 pm
Location: Texas, USA

Re: Servoy 4.1.0 beta 5

Postby rgansevles » Mon Nov 24, 2008 11:40 am

Greg,

You do get back an array of arrays. for each table filter a array of length 5 is returned with elements:
tableName, dataprovider, operator, value, filterName

Code: Select all
var  params  = databaseManager.getTableFilterParams(controller.getServerName())
for (var i = 0; i < params.length; i++)
{
   application.output("tableName="+params[i][0]+", dataprovider="+params[i][1]+", operator="+params[i][2]+", value="+params[i][3]+", filterName="+params[i][4])
}

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

Next

Return to Latest Releases

Who is online

Users browsing this forum: No registered users and 1 guest