Servoy 4.1.0 RC 1 on Mac OS X 10.5.5 with Java 1.6
Twice today Servoy has hung and I’ve had to force quit it. In both cases, after doing so, I have no methods attached to the form I was working on at the time. The first time I had to restore from a backup and lose what I’d done in the preceding 20 minutes, this time, I haven’t backed up for a few hours and its gone again.
If I create a new method on this form, it shows the .js file with all the rest of the methods, but they don’t show up at the bottom of the solution explorer, and all of my onaction methods are suddenly ‘unresolved’.
When you save a method (global or form) or methods for the global methods .js file and that particular form methods .js file are saved to the file system.
No exception that I know of.
I have never (ever) lost any methods, both for Servoy or Java this way. Unless I did not save them…
yeah, I know that… And the file in the filesystem seems fine…
The trouble is that the solution explorer tab down the left has no methods in it when I select the form. I.e. the form has no methods after this crash…
I looked into it more and found that the .js file had an extra } at the end, and I took that out and solved the problem. However it does beg the question, how does the methods file get attached to a form? I was looking at resurrecting it by creating another .js file, but couldn’t find a way to attach it to the form as the methods file for this form.
However it does beg the question, how does the methods file get attached to a form? I was looking at resurrecting it by creating another .js file, but couldn’t find a way to attach it to the form as the methods file for this form.
I suggest not to do that
I am pretty sure it is a combination of naming convention, the uuid of the methods and meta data.
The only way form methods are linked to a form is by the file name.
Methods for form f in solution s are expected in file servoy_workspace/s/forms/f/f_methods.js
When this file is edited outside of Servoy you need to refresh the workspace for changes to be picked up.