AppCenter Release notes Version 3.3.6

Requirements

Java 6 is required.
JavaMail API is required.
For Installations with Apache Tomcat please download mail.jar from http://www.oracle.com/technetwork/java/javamail/index.html
and copy it into <Tomcat Home>/lib folder.

 

On IBM WebSphere Servers the following Custom Settings must be removed or set to false.

com.ibm.ws.webcontainer.invokeFiltersCompatibility

com.ibm.ws.webcontainer.mapFiltersToAsterisk

com.ibm.ws.webcontainer.removetrailingservletpathslash

 

What's new

Fixes

  • Security
    • Conversion of username was not done for LDAP users
  • Persistence
    • Update to History App 3.3.1 and Notifications App 3.3.2 to fix issues with Microsoft SQL
    • Issue when search for boolean data in PostgresQL
    •  A Filter condition in Query can be add more than once
    • Events published wire Message Broker are not always stored in database
  • Messaging
    • Retried events are not stored in database
    • Message Broker was not registered in rules engine
  • Administration
    • User was able to delete system roles

Enhancements

  • General
    • Update Spring Framework to 4.3.23
    • Update Spring Security to 4.2.12
    • Update CrossTalk AppCenter UI to 3.3.6
    • Update CrossTalk AppCenter RFID Components to 3.3.1
    • Update CrossTalk Application - Notifications to 3.3.2
    • Update CrossTalk Application - History to 3.3.1
    • Load enclosed apps only if not available or newer than installed
  • Persistence
    • Add raw id property to store in event

 


Release History

Release Changes
3.3.4

Fixes

  • General
    • The Scheduler does not use predefined Task executors
  • Persistence
    • Check UUID and uuid property when receive event in JSON format
    • Response was always written as XML when receive in other format like JSON 
  • Messaging
    • Already persist messages are tried to store in database after AppCenter (re)start

Enhancements

  • General
    • Update Spring Framework to 4.3.20
    • Update Spring Security to 4.2.9
    • Update to CrossTalk AppCenter Theme 3.3.3
    • Update toCrossTalk AppCenter UI 3.3.5
    • Add CrossTalk AppCenter RFID Components 3.3.0
    • Add CrossTalk Application - Notifications 3.3.1
    • Add CrossTalk Application - History 3.3.0
    • Load enclosed apps only if not available or newer than installed
  • Persistence
    • Improve Event cleanup performance for MySQL database
3.3.2

Fixes

  • Unsubscribe from an folder in Device Management not work correctly
  • Subscriptions are not work correctly after a AppCenter restart

Improvements

  • Improve logging for database definition updates
  • Update to AppCenter UI 3.3.3 (only loaded when not available) 
  • Update to AppCenter Full-text Search 3.3.0 (only loaded when not available) 
  • Update Spring Framework to 4.3.19
  • Update Spring Security to 4.2.8
3.3.1

Fixes

  • Avoid NoSuchBeanDefinitionException when a view not exists
  • The Anonymous user was always loaded no matter if it is active or not
  • Add some missing UI messages
  • The Content-Type in HTTP response was not always set correctly
  • Remove database changes which are not need anymore
  • Avoid skip database definition update for some changes
  • Fix transaction isolation issue when update data base schema for MS SQL

Improvements

  • Update to actual Versions of Third party libraries
  • Update to AppCenter UI 3.3.2 (only loaded when not available) 
  • Allow to restart AppCenter with /dispatcher/restart (Authentication required)
  • Allow to restart AppCenter without Applications with /dispatcher/restart?mode=secure  (Authentication required)
3.3.0

Fixes

  • AppCenter UI was not loaded in IBM WebSphere Liberty
  • Column headers are not loaded loaded for some properties
  • Fix memory leak when a table is not selectable

Improvements

  • Update to actual Versions of Third party libraries
  • Allow to upload custom theme
  • Save current width of left navigation and restore it when user login
  • Show Active since and Last activity for current active users in Administration -> System Info
  • Show Changed at/by for users, groups, roles and application settings
  • Implement persistent queue for asynchronous event processing
  • Implement new endpoint nofilis-app-center/dispatcher/queue/event for asynchronous event processing
  • Publish event over message broker after a element or event was saved
  •  Integrate a new Scheduler
  • Show list of current scheduled tasks in Administration -> System info
  • Implement option for parallel processing of message queues
  • Implement send retry for message queues
3.2.0

Fixes

  • Object type was displayed twice in Administration -> Object List -> Object Details

Improvements

  • Allow to add additional properties to Object types without development
  • Allow to global overwrite store option per event type
  • Show subscriptions in User details and allow to unsubscribe it
  • Show Running since in Administration -> System Info
  • Show Application Name in Administration -> Roles

General

  • Update to actual Versions of Third party libraries
  • Add basic statistics for internal message broker in Administration -> System Info -> Message Broker Statistics
  • Complete UI is now moved to AppCenter UI Package to allow updates without new core package
3.1.14

Fixes

  • Fix Transaction abort issue on event cleanup for Microsoft SQL databases
  • Fix write wrong CSV header when export/request data
  • Stop UI background communication when response can not be read
  • Update third party library to avoid remote execution attacks
3.1.12

Improvements

  • Write Database changelog debug log messages to Application server log file
  • Add Support for IBM WebSphere Liberty 17.0.x
  • AppCenter respond now with HTTP 400 error when incoming message has invalid data format
  • Count number of Elements/Events stored in database visible in Administration -> Events & Objects -> Persistence Info
  • Execute same transaction up to three times when cleanup events throw a exception
  • Reduce database transaction size on event cleanup
  • Show Running since in Administration -> App Center -> System Info
  • Allow to customize all available I18n Messages in Administration -> App Center -> I18n
3.1.11

Fixes

  • Fix use correct column names when exporting
  • Fix a NullPointerException, when queries were done from HTTP requests (HDT or browsers).

Improvements

  • Allow to copy&paste a single permission in role details
  • Prohibit the sorting of columns with multiple values per row
  • Improve performance when search object by name
3.1.10

Fixes

  • Users & Groups selection popup shows all objects from database when search with '*'

Improvements

  • Improve response stream when query many data over HTTP
  • Event cleanup does not work when a different age is configured for some event types

General

Add Support for SAP NetWeaver Application Serve
3.1.9

Fixes

  • General: Application initialization procedure are executed twice under certain circumstances
  • Versioning: Exception was thrown when create the first version from a process template for example.
  • UI: The Time Filter does not use time zone from logged in user.

Improvements

  • General: Re-implement CSV conversion to improve performance.
  • UI: Re-implement CSV Export to improve performance for large amount of rows.
  • UI: Improve performance of Excel Export for larger amount of rows.
  • UI: To avoid unexpected actions like delete wrong rows, selection in tables is cleared when sort order was changed.
  • UI: Improve load and sort performance of tables with large amount of rows
  • Persistence: Re-implement internal database queries to improve performance.
  • Persistence: Improve usage of internal Second-Level cache.

General

  • Allow to configure path to nofilis-app-center.properties file over JNDI resource (<application-context-name>/config/file)
  • Allow to configure logout URL in Administration -> Settings which is useful when using SingleSignOn infrastructure.
  • Implement permissions for HTTP access to events, elements and nodes to allow more restrictive roles than "AppCenter Dispatcher"
3.1.7

Fixes

  • Pins are not rendered when user zoom in/out in Indoor maps.
  • Fix load properties in Filters which are not need/visible.
  • When a property selection is read-only render it as label to avoid unnecessary database queries.
  • CSV Import does not work correctly when last delimiter is missing.
  • AppCenter could not be started when wrong LDAP settings are set.
  • Initialize view in Tab only when user click on it.
  • Exception was thrown when try to store first version of a rule, template etc.
  • No page was found when using ../nofilis-app-center/workbench instead of ../nofilis-app-center/workbench/ as entry url.

Improvements

  • Static resources should no be cached by browser till next AppCenter restart.
  • Add createdAt/By and lastChangedAt/By per default as properties but don't display them.
  • Show createdAt/By and lastChangedAt/By of elements in Events & Objects -> Object list.
  • Show record time of events in Events & Objects -> Event list.
  • Allow to set password never expires per user.
  • Allow to create custom Roles in Administration and show all deployed by Applications.
  • Allow to export Elements in json format.
  • Allow to download multiple Applications as zip.
  • Allow to upload multiple Application as zip.
  • Show user details when double click on it in Group details.
3.1.5

Fixes

  • When delete a Element within Events & Objects remove also all leaf nodes
  • Set the timestamp of a incoming event to servers timetamp when when missing
  • Allow to download installed applications with right mouse click
  • Add new Network Test test for simple connection and ping tests to Administration -> App Center -> System Info
  • Disable Upload button in Administration -> App Center -> Applications
  • Forward HTTP requests to dispatcher/ping when App Center was started with errors
  • Event cleanup always tried to delete old events per day when set "Clean range step" to hour
  • Remove "Clean range step" from Events & Objects configuration and set it fixed to hour
  • Allow to configure thead pool size for scheduler and task executor within external app-center.properties file
3.1.4

Fixes

  • Wrong Logut URL was used when a Proxy Server is in front of AppCenter Application Server
  • Events & Objects -> Object List -> Details does not display last changed at/created at as Date
  • Fix broken automatic data update when server does temporary not respond
  • Add Support for IBM WebSphere Liberty
  • Use nvarchar instead of varchar when create Database tables for Microsoft SQL Server
3.1.2

Fixes

  • Show the Id of users in Selection when the Name exists more than once, to select the right one.
  • Fix NullPointerException in Live Event List
  • Fix NullPointerException when all views in a composite view are not visible
  • When using a Date/Time format with 12-hour clock the the wrong period was sometimes displayed
  • Security View shows sometimes old/wrong values

General

  • Add XML as Export format for Elements
  • Licenses can now initial installed with the application.

UI

  • Add feature to set highlight color for each Object in Indoor Map
  • The configured Server Name is no displayed in Browser Window title
3.1.1

Fixes

  • Fix NullPointerExceptions when display events, elements or nodes
  • Fix problem when create new version from a element like process template
  • Avoid lookup when value and label property are same in selection
  • Improve performance when update markers on global map
  • Avoid exceptions when a user session become inactive

General

  • Administrators are able to send messages to logged in users from System Info -> Current Users
  • Upload a custom logo to show on login page
  • Allow to register additional custom servlet filters per extension
  • Add option to convert username to upper/lower case characters
  • Allow to configure element properties to use as a web resource
  • Installed applications are able to create system accounts which can not be deleted

UI

  • Show different colors for origin (red) and calibration (purple) points in location editor
  • Show number of deleted rows from a table
  • Show current logged in username on the top right corner

Persistence

  • Allow to restore specific properties from a element version
  • Allow to change default transaction isolation in nofilis-app-center.properties
3.1.0

Fixes

  • Automatically refresh Web page on "Out of sync" errors
  • J2CA0081E Error on IBM WebSphere
  • Show AppCenter Restart message in users Language
  • Each request per user is now synchronized to avoid inconsistent application states.
  • Show only one notification when multiple files are uploaded

General

  • Update Spring Framework to 4.1.7
  • Update requirement to Java 6
  • Update third party libraries to newer version
  • Show list of active users and allow to send messges to selected one
  • Allow to filter for a specific role in user list
  • Allow to filter for a specific role in group list
  • Allow to filter for a specific user in group list
  • Allow to edit group membership in user details
  • Always show created at/by and changed at/by in Events & Objects
  • Check if a non leaf node point to the element which would be delete in Events & Objects
  • Implement Authentication for other systems with a fixed key and a dynamic token
  • Allow to change path to configuration file by system property -D<context-root>.config.file
  • Implement failover support with Hazelcast
  • Implement support for extension points with annotations
  • Write error to Notification Center when a mail can not be sent
  • Auto create tables for H2 database
  • Show special web page and respond with HTTP 503 error when AppCenter is restarting

UI

  • Add support to receive URL paramters in views
  • Show number of selected items in Tables
  • Allow to hide navigation (noNav=true) and header (noHeader=true) per URL parameter
  • Use button or URL parameter (fullScreen=true) to hide navigation and minimize header
  • Allow to reorder columns and store it in user settings
  • Allow to show/hide columns and store it in user settings

Persistence

  • Allow to add filter properties for element based selections
  • Allow to check permission on element based selections
  • Allow to check permissions per property with parameter "checkPermission=true"
  • Allow to configure a validator with regular expressions with "validator.regexp"
  • Allow to order Listeners in persistence with @Order annotation or Order interface
  • Implement HistoryRepository API
  • Implement VersionRepository to store different versions of a element
  • Use index to check unique element id per type to improve performance
3.0.7

Fixes

  • Map locator label was not displayed complete when positioned near top border
  • Wrong view was selected in some menus after login
  • All menu entries in item(s) menu where enabled after login, even it should be disabled

General

  • Update Spring Framework to 3.2.13
  • A simple endpoint "../dispatcher/ping" was added to check the keep alive of AppCenter
  • Allow to import users
  • Allow to configure locale and timezone per user, by default uses browser locale settings

UI

  • Allow to add a sort order progamatically for applications
  • Set the focus to first editable field when switch to edit mode
  • All Date, Datetime and Timestamp fields now using users timezone to display the value
  • Allow to print a subset of visible content

Persistence

  • Allow to register Listeners to be notified inside, or outside a transaction

Persistence Remote Access

  • Allow to respond elements in JSON format
  • Allow to receive events in JSON format
  • Respond with HTTP 409 error on concurrency exceptions
3.0.5

Fixes

  • Event cleanup has stopped working
3.0.4

Fixes

  • When check permissions on collection of nodes it does not validate if users permission is from same domain object

Security

  • Allow to check if user has role on a collection of nodes/elements

Persistence

  • With Oracle database the update of Elements are not worked correctly.
  • If user like to search a word which contains _,?,* or % it must be surrounded by double quotes

Persistence Remote Access

  • Allow to select the number of properties in Nodes with $select parameter
3.0.3

Fixes

  • Catch all Exceptions when a Application is using the internal Messaging System
  • Catch all Exceptions when Mail Sender consume Messages via Messaging System
  • Check if Thread is running when add Message to a Topic or Queue to avaoid OutOfMemoryError

Persistence

  • Delete Nodes which has references to no longer existing Elements when AppCenter starts
  • Allow to Query UUID or id of an Element without to load the whole Element (ElementRepository.findPropertiesBy)

UI

  • Use TextField instead of ExpandingTextField when "colums" parameter is defined for a property
3.0.2

Fixes

  • Applications can now be loaded from database when running on JBoss
  • NULL values are not stored in database
  • Version number was not loaded when running on IBM WebSphere
  • NullPointerException was thrown when try to convert empty date/number values
  • Configured input prompt are not visible for all supported components

General

  • Update Spring Framework to 3.2.11
  • Update Spring Security to 3.1.7
  • Allow to upload custom AppCenter logo
  • Show AppCenter settings provided by properties file

Persistence

  • Improve performance when insert/update/delete Elements
  • Implement post persist listener support for Events
  • Implement pre persist listener support for Elements
  • Add changelog to ElementCreatedEvent
  • Last changed at and last changed by are only set if Authentication informations are available

UI

  • Improve Locator component performance
  • Allow to configure Locator component to cluster by max. number of pins

Persistence Remote Access

  • Switch off response of sent event with $response=false
3.0.0

Fixes

  • Disable delete admin and anonymous user
  • Problem with mssql database when number value is null
  • Nodes are not filtered out correctly when check ACL

Persistence

  • Automatically create AppCenter database tables if not exits
  • Allow to configure a separate log file to track database changes
  • Change lastChangedAt and lastChangedBy only if Authentication infos are available
  • Update second level cache when a Element was changed instead of delete it

Security

  • Allow to attach custom Authentication Filters as Extensions

UI

  • Show different images when a application was added/updated/deleted or not loaded
  • Some style and popup window size improements

API

  • Applications can use Liquibase to create/update Database Schema
  • Limit Element/Event type id to 128 characters
  • Limit property id to 64 characters