Release NotesApril 29, 2011
About Canoo RIA Suite ULC - Update 3
Please see the Canoo RIA Suite Update 2 release notes for previous release notes.
To migrate from Canoo RIA Suite Update 2 to Canoo RIA Suite ULC Update 3, please see the migration notes.
Canoo RIA Suite ULC Update 3 requires the Java Runtime Environment (JRE) 1.5 or later on the server and on the client.
To deploy an Canoo RIA Suite ULC application in a JEE server that supports at least the Servlet 2.4 specification.
Packages, Modules, Parts and Release Structure
UltraLightClient is part of the Canoo RIA Suite. It consist of the ULC Core that includes all components required to successfully develop and deploy UltraLightClient applications. Additionally there are several extension packages that provide extended functionalities. The UltraLightClient modules, parts, packages, and the structure of the current release are described in the following sections.
Package ULC CoreULC Core contains everything that was in previous version of ULC enhanced with the new features: extended visual Effects, Charts, Animations and export to Google App engine.
The UltraLightClient release is split into modules. Each module belongs to exactly one of five categories:
All UltraLightClient classes.
For convenience, contains all other modules (except samples).
The UltraLightClient core.
Always needed, for development and deployment.
Server-side integrations into Servlet container.
Only needed for server deployment.
Client-side integrations into environments, e.g. Applet, JNLP.
Only needed for client deployment.
Utilities and extensions, e.g. application framework, test framework, QTP integration.
Only needed on demand.
Samples demonstrating the usage of UltraLightClient, e.g. Hello, ULCSet, OnlineShop.
Not needed during development or deployment.
The category and module names are reflected in the directory structure of the release, e.g. environment/applet for the applet module that belongs to the environement category.
A module directory contains subdirectories with the following contents:
Jar files that contain the module classes.
For sample and add-on modules the required libraries.
Only for sample modules: the required resources, e.g. images, property files
Either complete source code or source stubs.
The source stubs are used to enable code completions in IDEs.
Only for sample modules: ready to deploy web application, i.e. war files
Each of these modules can contain up to four parts:
Contains classes to be deployed on the client side.
Runs inside the sandbox.
Contains classes to be deployed on the client side.
Does not run inside the sandbox. The additional permissions required depend on the module.
Contains classes to be deployed on the server side.
Contains all classes needed during development, i.e. the client, trusted, and server parts plus some additional development classes.
The part names are reflected in the filename of the jar files in the lib and src directory of the corresponding module, e.g. ulc-applet-client.jar and ulc-applet-client-src.jar for the classes and source stubs of the applet module that have to be deployed on the client side.
Package ULC Table Plus 1.0.2 (JIDE Grids v2.10.5)ULC Table Plus integrates the JIDE grids library that provides a table with various extended features.
Package ULC Web Integration 1.0.1 (JxBrowser v2.7)ULC Web-Integration integrates the JxBrowser library. With this package you can integrate any web page directly into your ULC Application.
Package ULC Enterprise Portal Integration 1.0With this package you can integrate an ULC Application into your enterprise web applications or your enterprise portal server.
Package ULC Office Integration 1.0This package bundles Apache POI and iText to produce PDF and MS Office documents integrated into your ULC Application.
|<ULC_HOME>||UltraLightClient home directory|
|Add-ons to the UltraLightClient base framework|
|base||UltraLightClient base framework|
|all||For convenience, all UltraLightClient classes|
|Server integrations including Servlet container integration and integration into local container for stand-alone (single JVM) ULC applications.|
|Client environment integration for applet deployment, JNLP deployment, and standalone deployment.|
|ext||contains the libraries of installed packages|
|license||the jar file with the deployment license key|
|previous_releasenotes||Previous release notes|
|Sample applications with ready to run Jetty Servlet container|
|thirdpartylicenses||licenses of included third party libraries|
|license manager tool|
|build.txt||Contains the build number|
|LicenseAgreement.pdf||The license Agreement|
|UBA-7986||ULCTableScrollPane: Synchronising of selection state|
|UBA-8092||Adding a footer, after a column has been hidden, causes an exception.|
|UBA-8333||Adding rows when a filter has been are not considered - table model does not get updated|
|UBA-8336||CustomRenderer do not work as expected with table plus filters|
|UBA-8352||Remove/Add column cancels custom rendering for that column|
|UBA-8363||Null-Event passed for ListSelectionListeners|
|UBA-8371||IllegalStateException after selecting table row|
|UBA-8373||extreme high CPU load after changing sorting from server side|
|UBA-8374||setDefaultRenderer() does not work for ULCJideTable|
|UBA-8379||convertRowIndexToModel does not work correctly, if sorting set|
|UBA-8380||The license manager tool can not handle version change like 1.0 ---> 1.0.1|
|UBA-8384||Row index conversion does not work correctly, if table model consists of a single column.|
|UBA-8388||convertRowIndexToModel triggers java.lang.IllegalStateException, if cell renderer is set|
|UBA-8389||ListSelectionListeners should not be called upon sorting a table|
|UBA-8390||convertRowIndexToModel throws IllegalStateExeption|
|UBA-8392||Exception on converting model index to view after adding row to model|
|UBA-8393||convertIndexToView incorrect after table model updates|
|UBA-8394||Calling fireTableDataChanged() on a sorted column renders table cells empty.|
|UBA-8399||When using custom filter on client side, an exception is thrown|
|UBA-8403||Filter items set before uploading are not taken into account|
|UBA-8406||Hiding a column in ULCTableScrollPane with a footer hides all subsequent columns as well|
|UBA-8325||Give access to filters currently used in FilterableTableModel and allow setting of them from server side|
|UBA-8335||It is not possible to click on table column header with ULC Testing Framework, e.g. to test sorting|
|UBA-8362||Sorting states set before uploading are not taken into account|
|UBA-8381||In license manager, there should be a scrollbar for installed extensions list.|
|UBA-8397||When the table model is changed on server side, two row index mapping changes are fired when working with a sorted table|
- Deprecated methods have been removed from com.ulcjava.base.client.chart.ChartBuilder
- Some more methods related to old-style and deprecated event mechanism delivery removed from com.ulcjava.base.application.ULCProxy
- Deprecated methods have been removed from com.ulcjava.ext.ulctableplus.server.ULCJideTable
- Deprecated methods have been removed from com.ulcjava.ext.ulctableplus.server.ULCTableScrollPane
- com.ulcjava.ext.ulctableplus.server.IJideTableClientModelUpdateListener has been removed. com.ulcjava.ext.ulctableplus.server.IRowIndexMappingChangeListener should be used instead.
- createFooterTable has been renamed createRowFooterTable for clarity.
- createXXXColumnFooterTable methods have an additional argument: ULCJideTableColumnModel.
- prepareSubTableColumnModels has been renamed prepareTableColumnModels
You can find known problems and limitations in our issue database.
Product and company names herein may be trademarks of their respective owners.