EGL Development User Group - Group home

Rich UI Performance Improvements in Rational Business Developer 8.0.1.2

  
Version 8.0.1.2 of Rational Business Developer includes multiple performance improvements for Rich UI applications.  The following is a list of the improvements that were made, and a brief description of how these improvements may affect your Rich UI applications:
 
Dynamic Loading - Dynamic Loading allows an EGL Rich UI application developer to indicate which RUIHandlers should be included in the initial download of an application, and which RUIHandlers can be loaded 'on-demand' while the application is running.  Loading handlers dynamically can greatly improve the start time of an application since it reduces the amount of content that needs to be sent to the browser before the application can be run.
 
Grid Layout -The Grid Layout widget has been optimized to improve rendering performance using the same techniques that were applied to the Data Grid widget in prior releases.  In addition to improving the run time performance of the Grid Layout widget, the Rich UI Visual Editor has also been optimized to provide better performance when adding, removing, and relocating widgets within a Grid Layout.  The updated version of the Grid Layout widget can be found in the com.ibm.egl.rui_4.0.0 widget project.
 
Rich UI Application Deployment - While RBD 8.0.1.2 was being developed, the Rich UI Deployment process was found to be re-generating handlers unnecessarily as they were being deployed.  This bug has been fixed, and handlers are no longer being generated during deployment.
 
Basic Handler Support -  Support for Basic Handlers has been added to the JavaScript Target System. Prior to this enhancement, it was necessary to use either a RUIWidget or a RUIHandler when defining a basic data structure with both fields and functions for the JavaScript Target System. Using a RUIWidget or a RUIHandler as a data structure introduces unnecessary run time overhead, as these part types are intended for use with the browser's DOM tree (i.e. Widgets).  Using Basic Handlers eliminates this overhead while providing the intended behavior.
 
Improved Memory Management - While RBD 8.0.1.2 was being developed, a memory leak was found in the Job widget, which was causing the memory associated with the Job, and the part that declared the Job, to be released only when the browser was closed (e.g. tab or window).  In a Rich UI application that creates 'anonymous' Jobs, this meant that the memory used by each Job, and the memory used by the RUIHandler instantiating the Job, was not being released when the Job was finished.  This bug has been fixed, and a Job object is now released as soon as the Job finishes running.  (Note: If a Job is declared as repeating, the memory associated with the Job will only be released when the Job is canceled or the browser is closed.)
 
With these improvements, your Rich UI applications should run faster.
 
Brian