Verj.io Version 5.8.0
Welcome to Verj.io V5.8.0.
Click here to read the
installation and upgrade instructions.
Functional changes in V5.8.0
Change of behaviour:
connection to any
server other than the Embedded Server supplied with the studio now requires
configuration of a user/password with the appropriate role on the target server
and this needs to be configured in Designer
Preferences > Servers on the
studio.
Bugs
fixed in V5.8.0
Number |
Description |
336343 |
Repeater
Row Control layout type cannot be set to none |
336342 |
Referenced
SCSS files not automatically included in deployment |
336341 |
Rest Service
authentication does not re-use the refresh token when the access token fails |
336340 |
OAuth
Rest does not resume correctly and just refreshes the original page |
336339 |
Security
API OpenID Connect does not exchange token for an access token with the same
configuration |
Functional changes in V5.7.0
1.
This
release introduces a new Gateway Server product. Its purpose is to assist with
the migration of in-house systems to the cloud. In particular it provides:
·
Single
Sign On (SSO) from a cloud server to any in-house security system including
Active Directory
·
Access
from a cloud server to in-house databases and other resources
·
A
portal application that runs in-house and provides links to the cloud
applications
·
A
programming API
These facilities are all based on a secure framework using
industry best practice.
Bugs
fixed in V5.7.0
Number |
Description |
335849 |
Cannot generate
a PDF document using Microsoft Edge |
336324 |
Saving
a form using Save/Restore functionality displays an error message “An invalid
character [32] was present in the Cookie value” |
336325 |
Scheduled
task logs in the server admin app cannot be displayed when there are hundreds
of them as it takes too long to show the results and they are difficult to
navigate |
336326 |
Deployment Package does not work – The tree icon shows as a black dot in the Verj.io Studio |
Functional changes in V5.6.0
1.
Verj.io V5.6 is a landmark release
in that it introduces a new file system layout for the installation that will
enable future upgrades to be performed automatically. This new file system
layout provides separation between the Verj.io distribution files which should
not be changed by customers (the installation
file system), and any customer configurable files (the userdata file system). Future upgrades will work by replacing the
Verj.io distribution files. This change applies to both the Studio and Server
components.
2.
The level of Rhino, which provides
server-side Javascript, has been upgraded to level 1.7.11
which includes support for many ES6 features.
3.
Logon Services have been enhanced
to support the ability to add Authorizations
to a user, in addition to roles and credentials. Authorizations provide more granularity
than a simple role, enabling more sophisticated security checks, and can be
checked using SecurityManager.isAuthorized().
Bugs
fixed in V5.6.0
Number |
Description |
336262 |
An exception is
thrown when JSON.stringify() is called on an Java String Array |
336263 |
Table Field Column
Mandatory Check - Client |
336264 |
|
336265 |
Verj.io Studio locks
on MacOS when the studio regains focus when editing a Form or the Resource
Hub is open e.g minimised and maximized |
336266 |
The Mac OS look and feel
shows very dark blue tabs on the dockable panels which makes it very hard to
read the labels |
336269 |
Repeating weekly schedule task does not reset to the correct day for the new execution time after a task is run. |
Bugs
fixed in V5.5.1
Number |
Description |
336037 |
An
outdated version of Jquery is used - jquery-1.6.4.min.js |
336169 |
Can't
add more than one linked text file to a form |
336171 |
Multiple
SaveRestore servlet errors appearing in log |
336177 |
Javadoc
incorrect for $eb.getComponentPrefix() and $eb.executeFunction() |
336184 |
Problem
adding shared function scripts with components |
336185 |
Radio
Button lists don’t work with Bootstrap |
336188 |
Cannot
add a legacy print form to a form if one does not already exist |
336189 |
Cannot
install a widget from the resource hub when you right click on a control |
336190 |
Changing
presentation template from a script fails |
336191 |
PDF Header
and footer styles can't be edited for a Page Control property set in a
template when this is the default property set |
336192 |
Calendar
popup icon missing with IE with display type set to HTML 5 date |
336193 |
Issuing
set template command twice in scripts causes a java.lang.RuntimeException:
java.lang.ClassNotFoundException |
336194 |
HTML 5
with IE 11 - Required field validation does not work |
336195 |
Client
callable script associations appear multiple times with linked components |
336196 |
NullPointerException
printing from a before form event |
336197 |
Database
connection problems can occur when one of the server properties files is
updated |
336198 |
Sortable
property can't be set on table columns in some circumstances |
336202 |
Print
Page Landscape orientation is ignored if the page size is set to A4 |
336216 |
Renaming a
Form/Component can cause an exception and form corruption. |
336217 |
Licence check fails throwing
an exception when run on a Microsoft Hyper-V Virtual machine with a tunnel
adapter. |
336225 |
Print Page does not
apply the correct PDF Margin properties to the print pages and looks
different from version 5.2. |
336226 |
Atomikos transaction
manager limits the server to 50 simultaneous transactions. |
Functional changes in V5.5.0
· The component prefix can be specified as the last parameter of the client API $eb.executeFunction() function. In most cases the system will determine when a component context should be applied to a server function called using $eb.executeFunction() but there are some circumstances where this doesn’t work and then this new parameter is required e.g. when a ready event is used to bind another jQuery event.
·
A new method $eb.getComponentPrefix() has been
added to the client API
Functional
changes in V5.4.0
·
Make
a web app page look exactly the same as a native app page e.g. by removing the
URL bar
·
Automatically
add a start icon to the device’s home page
·
Caching
of HTML pages and web resources by a service
worker so the app can start even when offline
·
Downloading
of web apps from an app store
·
Support
for push notifications
Please note that support for PWAs varies for each browser
provider and not all browsers currently support all the features listed above.
Ebase support for PWAs will continue to be developed in future releases as
further browser capabilities are announced and released.
Click here for more information.
·
New
installations: wkhtmltopdf
·
Upgraded
systems: Flying Saucer
Please note that changing the PDF engine may result in
some changes to existing print pages.
The following Web Forms 2.0 input types are supported and can be selected as display
type for a form field or table column:
color, date, datetime_local,
email, month, number, range, search, tel, time, url, week
Some of these types will result in browser widgets being
displayed to help the user enter the data e.g. date, number. The implementation
of these widgets varies between browsers.
Also, some of these types invoke browser validation of the data entered
e.g. email, range. Any validation messages issued by the browser can be
customized using the Validation Message Field Control property. Click here
for more information.
The Mandatory
Field Control property has been renamed to Required,
and required fields are now implemented using native browser validation. This
applies only when the form document type in Form
Properties > Presentation is set to HTML
5. The message displayed (e.g. “Please fill in this field”) can be changed
using the Required Message attribute
of Field Control.
Bugs
fixed in V5.4.0
Number |
Description |
336049 |
Rest
response content-length issue |
336071 |
Server
admin app fails in V5.3.2 when called over SSL |
336108 |
NumberFormatException
during updatetable of nested table when rows have been deleted |
336109 |
Copying
a scheduled task generates a duplicate runtime id |
336110 |
Rhino
script variables stored in session context or other similar contexts use
excessive memory |
336111 |
Server proxy
password on the server is not encrypted and fails to decrypt at runtime |
336112 |
Cancelling
a workflow job gives message "Cannot cancel from state Cancelled"
if tasks have been cancelled |
336113 |
Workflow
pause node script fails with "Cannot have any pending top calls when
executing a script with continuations" |
336114 |
Copying
a folder with many inter-related entities does not correctly refactor the
relationships |
Functional
changes in V5.3.2
This release provides integration with the new Verj.io Platform
as a Service (PaaS) system which offers fully supported Ebase Xi servers
running in the cloud and is also the new home for the Ebase website; the Ebase
Xi Designer has been re-branded as the Verj.io Studio. The studio
provides the ability to deploy to either a server in the Verj.io cloud (known
as a service plan) or a non-cloud server (these are now known
as on-premise servers); similarly you can run forms and test
web services and workflow processes against either cloud or on-premise servers.
The Vault has been replaced by
the Resource Hub.
This contains tutorials, samples, templates and other technical content that
provide advice and can be imported directly into the studio. The Resource Hub
will become the major source of technical help and will be expanded in the
future.
A new Verj menu item
has been added to the main menu. This provides the ability to logout/login
from/to the Verj.io portal plus the ability to change the privacy settings. In
the current release these settings make very little difference – they are used
only when deploying to a service plan in the cloud or when connecting to the
Resource Hub. However, in the future the studio will be enhanced to collect
information on how the studio is used, detect any problems, and offer advice
based on this. When this functionality is added, you will have the ability to
disable it via the privacy settings.
· Icons from the old tab
headers have been moved to a new toolbar at the top of the page
· Icons from the old
tree toolbar have been moved to the new toolbar at the top of the page
· The Form Editor
toolbar and page toolbar have been re-structured
· The Run button has
been renamed to Test and moved to the main toolbar and a test
history has been introduced. This makes it possible to run forms from any
editor at any time.
Container
Controls:
· Footer Control – same as a
Panel Control but encloses content in a <footer> HTML tag
· Header Control – same as a
Panel Control but encloses content in a < header > HTML tag
· Nav Control – same as a
Panel Control but encloses content in a <nav> HTML tag
· Section Control – same as a
Panel Control but encloses content in a <section> HTML tag
List Controls – these provide the
ability to display content in an ordered or unordered list and within list item
HTML tags <li>:
· List Panel Control – provides the
ability to lay out any static content as a list
· List Control – used to display
dynamic list content e.g. from a database (Dynamic List) or a Static List or a
list set via a script
· List Text Control – used with a
List Control to display a list item text
· List Hyperlink Control – used with a
List Control to display a list item text as a hyperlink
· List Item Control – represents a
<li> tag
· Repeating List Control – provides the
ability to display a table as a list
Click here for more details on using the new
list controls.
There are now three ways that an Ebase
service can be called from an external (non-Ebase) application:
· REST Web Service stateless REST calls
· SOAP Web Service (integration Service)
call – stateless SOAP calls
· Using the new External API – when stateful
calls are required
· New methods
encryptAES() and decryptAES() have been added to EncryptionServices to provide
encryption using the AES algorithm with 128 bit keys. The existing encrypt()
and decrypt() methods have been deprecated as they use the DES algorithm with
64 bit keys; this DES algorithm is now considered as potentially vulnerable and
customers are recommended to use the new AES methods instead.
· New methods
appendToFile() have been added to FileServices. These should be used when
appending text to a file instead of the writeFile() methods that replace the
file contents.
· It is now possible to
exclude some Java classes from the automatic conversion that occurs for
server-side Javascript scripts when Java objects are transferred into the
Javascript environment. This conversion behaviour is mostly beneficial but can
occasionally cause problems; it includes the conversion of all Java lists
(java.util.List) to Javascript arrays [] and the conversion of all Java maps
(java.util.Map) to Javascript objects {}. Individual Java classes or
interfaces can be excluded from this conversion by using
system.addWrapFactoryExcludedClass() and
system.removeWrapFactoryExcludedClass() e.g.
system.addWrapFactoryExcludedClass("java.util.Properties");
The scope
of changes made by these methods applies to the currently executing form, web
service, workflow job etc.
· New methods
addCssClass() and removeCssClass() have been added for all controls. These
methods allow classes to be added and removed dynamically without affecting other
classes assigned to the control.
· The ability to iterate
through items in a list has been added. This can be used when a list is
associated with either a field or a List Control:
var items =
controls.listControl.list.items;
while
(items.next())
{
var
val = items.listValue;
if
(val == "danger")
{
controls.listItem1.backgroundColor
= "red";
}
}
Bugs
fixed in V5.3.2
Number |
Description |
335821 |
Added
character encoding to RestOptions when invoking a REST call to specify the
response message character encoding type. |
333892 |
Problem
deleting table columns in the Ebase designer that contains percentages in
their style width values. |
335864
and 335973 |
Fixed the
security vulnerability to change the epd parameter to change the page. If
could open a page that does not contain a security check. |
335895 |
NullPointerException
when inserting a row into a table, deleting it and then issuing an update
table when the resource is backed by an Integration Resource. |
335896 |
Fixed
that REST service resource response headers do not substitute the value in
fields (fields with && in them). |
335938 |
V4 repository
that contains duplicate mapping when upgraded creates duplicate mappings. |
335979 |
Importing
an Ebase export file that contains special UTF-8 characters (for example Ł
sign) corrupts the character. |
336035 |
SOAP web
service calls that require maintaining of sessions cookies are lost between
execution of different Ebase forms. |
336050 |
OAuth Access Grant
scopes and User Resource parameters can be overridden from the Rest Resource
OAuth authentication configuration or these can be overridden at runtime
using the OAuth authentication object in scripts. |
336051 |
Adding a shared or client callable script to a component and then running the form causes an error stating that the shared script does not exist. |
336052 |
Set a table column
value to include HTML and set it to be a Hyperlink, at run time the html is
not rendered. |
336053 |
Using the server admin app to edit the non
proxy hosts configuration truncates the entry to 255 characters. |
336054 |
A reference to form.getElementName() or
system.variables.$FORM_ID fails with a NullPointerException when calling
within an Integration Service script. |
336055 |
After inserting a row using a database resource
to a |
336056 |
Searching workflow jobs by process attribute name/value using the jobs list resource doesn't work. |
336057 |
NullPointerException after importing a database resource and trying to open in the designer. |
336058 |
Numbers without decimal points get .0 added when assigned to character fields. |
Functional
changes in V5.2.0
1.
Support
for publishing REST web services has been added. Together with the changes introduced
with V5.1, full support is now provided for calling and publishing both REST
and SOAP web services.
2.
Many
icons and panels have been changed to introduce a fresher look into the
designer.
3.
Javascript
API Changes:
·
A
new technique for executing SQL statements has been added without the need to
create a Database Resource and mappings. This is accessed via the new
DatabaseServices class e.g. services.database.executeSelectStatement(…). All
SQL statements are supported.
·
Property
files can be loaded using one of the new system.loadPropertiesXxx methods.
Bugs
fixed in V5.2.0
Number |
Description |
335799 |
Error
calling a SOAP web service: Could not invoke service.
java.util.ConcurrentModificationException |
335813 |
Workflow
process tester fails when using SQL Server repository database |
335814 |
Error
running large forms: CannotCompileException java.lang.ClassFormatError:
Invalid method Code length 74999 in class file TEXTS_xxx. |
335816 |
ClassCastException
using print resource from workflow |
Functional
changes in V5.1.1
1. Support
for calling RESTful web services has been extended:
Bugs
fixed in V5.1.1
Number |
Description |
335759 |
Error “Cannot modify a property of a sealed object” changing a
Javascript prototype object |
Functional
changes in V5.1.0
1.
Support
for calling RESTful web services has been added which can be achieved using the
new REST Web Service Resource or directly via the programming API.
2.
A
link to the Ebase Xi Vault application on the Ebase website is available via Help > Ebase Xi Vault. Ebase Xi Vault provides many samples, videos,
complete apps etc and these can be viewed from the designer and/or downloaded
directly into the workspace (to the Vault
folder in the ebaseSamples project)
by clicking the Download button at
the top of each item page. The Ebase Xi Vault will continue to be expanded in
the future and is intended to be a major source of advice and samples covering
all aspects of Ebase Xi.
3.
New
variable services has been added to
the Javascript API. This provides access to all the xxxServices classes within
the script API e.g. DateServices, EncryptionServices etc. Previously these
xxxServices class names had to be included within a script statement e.g.
DateServices.formatDate(x, y) whereas this can now be coded as
services.date.formatDate(x, y). This makes it easier to understand which
services classes are available.
4.
The
ability to exclude folders from the entity tree has been added. By default this
includes .svn, .cvs and .git. These folder types are configured using Designer Preferences.
5.
A
new template xiDefault is supplied.
Bugs
fixed in V5.1.0
Number |
Description |
333983 |
Styling Assistant does not show labels when a language other than
English is used |
334818 |
XSL Adapter: text editor window does not scroll |
335337 |
Resettable documentation is not clear |
335397 |
PDF generation hangs |
335404 |
Can't call upload via the client API |
335466 |
Exception if user manipulates the ebz URL parameter part way
through form execution |
335676 |
Custom lists and Static lists display return value instead of
display value when field is a hyperlink |
335682 |
Passing an object which contains an array back to the calling
form crashes the form |
335685 |
Workflow decision node - get error clicking OK so can't change
it in any way |
335688 |
Some dialogs use black text when highlighted - makes it
difficult to see on a dark b/g |
335691 |
Subversion control (.svn) folders are visible / searched in
Designer |
335702 |
Clicking Browser back button after returning from a called form
causes runtime error |
335719 |
Date in
Language File: results in Version Control checking it in although the texts
have not changed |
335723 |
Barcode control needs server to render image on the designer |
335724 |
Getting Started resource centre has illegal href links |
335725 |
Unable to run forms in a Linux installation unless Firefox is
installed |
335726 |
form.generatePdf() gives NPE when image has blank / invalid url |
335727 |
Save button in style sheet editor is always enabled |
335728 |
Deployment of multiple server email files fails |
335729 |
Styling the final page using classes doesn't work |
335730 |
Form cacheloader fails to find the form in workspace |
335731 |
Incorrect behaviour of mandatory column in Tabset when |
335732 |
Documentation for "Change Ebase Repository to a different
database" is out of date |
335733 |
References to a default property set doesn't work |
335734 |
Client response headers are lost due a server redirect |
335735 |
Uses panel and data dictionary are not updated when a form is
renamed |
335736 |
Database connection changes within the Server Admin App. require
a server restart |
335737 |
Server Admin App: saving email server port number fails |
335738 |
A message issued from an event on page_1, but against a control
on page_2 is not rendered |
335739 |
Renaming / moving scripts fails to refactor associated events |
335740 |
Add ability to rename integrated test server web app |
335741 |
NullPointerException accessing event.eventDescription in a
callable function |
335742 |
NullPointerException generating PDF from scheduled form |
335743 |
Page cannot be displayed error and NullPointerExceptionafter
removing a list from a table column |
335744 |
css and client script editors mess up LF and CR |
335745 |
Refreshing Entities takes too long |
335746 |
Server Admin App when using Oracle repository - error listing
users |
335747 |
Renaming a folder to a different case causing problems |
335748 |
Server Admin App logon page - cursor goes to the password field |
335749 |
Saving entities in the designer is very slow |
335750 |
Form calls itself, upon return any reference to a field causes
NullPointerException error |
335751 |
Making a change in Designer preferences causes unsaved changes
being undone |