Release NotesMarch 10, 2011
About Canoo RIA Suite ULC - Update 2
Please see the Canoo RIA Suite Update 1b release notes for previous release notes.
To migrate from Canoo RIA Suite Update 1b to Canoo RIA Suite ULC Update 2, please see the migration notes.
Canoo RIA Suite ULC Update 2 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.1 (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-7815||ULCTable / ULCTableTree should do nothing in JTable.configureEnclosingScrollPane()|
|UBA-8056||Application.ready() should not be called asynchronous|
|UBA-8095||obfuscated EJB server jar throws an Exception|
|UBA-8143||Setting SelectionMode on the RowSelection Model on the main table of an ULCScrollTablePane before uploading gets lost|
|UBA-8151||ULC QTP Integration does not work with QTP 10|
|UBA-8196||Application with an extension does not run on JBoss|
|UBA-8265||ulc-license-manager does not replace ULCWebIntegration License correctly|
|UBA-8282||fireTableDataChanged() throws an exception|
|UBA-8289||Setting a date data type will make ULCHasChangedEnabler works wrongly|
|UBA-8297||ListSelectionEvent.getSource().getClass() of JideTable.getSelectionModel() is an obfuscated inner class of table plus|
|UBA-8299||'AbstractStandaloneLauncher' does not contain the client hook which would register the license string for Jide table.|
|UBA-8304||ApplicationConfiguration has package private constructor|
|UBA-8312||Jemmy sources have disappeared|
|UBA-8314||ULCColorChooser throws NullPointerException in case parent component is null|
|UBA-8318||ULCMandatoryAndEnabler does not work correctly with Substance L&F for editable ComboBoxes|
|UBA-8319||Delete of last table row results in com.ulcjava.base.client.RemoteException|
|UBA-8321||Empty strings not rendered in a combo box when specifying a custom IRenderereComponent|
|UBA-8322||Sorting in JIDE tables does not invalidate the renderers|
|UBA-8326||Making a column visible through the JIDE column chooser does nothing|
|UBA-8328||ULCSet sample application throws a NPE when displaying the source code of a selected widget|
|UBA-8330||Setting auto filter table header displays kind of null column header after the valid ones with Java 6|
|UBA-8337||using cell editor while filter is set provokes weird behaviour|
|UBA-8338||ULCChartPanel is not supported in ULC VE|
|UBA-8340||Error when samples are not installed|
|UBA-8345||ResourceMap does not support cyrillic symbols|
|UBA-8353||Calling ULCScrollPane.setRowHeaderView with an ULC table after ULCScrollPane.setViewPortView overwrites the column header view|
|UBA-8356||Formatter does not correctly format the number - value sent back to the server is not correct|
|UBA-8357||addTitle("Title").append(true) does not work, i.e., the title is not laid on the same row.|
|UBA-7486||Remove EJB deployment option from release|
|UBA-7759||SingleFrameApplication should inject resources when content changes|
|UBA-7821||FormModel should not invoke calculate() from within constructor|
|UBA-7832||Application framework should support forms with enums|
|UBA-7872||High risk of memory leaks with forms: get rid of AbstractFormBuilder.dispose()|
|UBA-8279||ULC does not support EnumSet|
|UBA-8291||ServletContainerAdapterHelper should be open for extension|
|UBA-8293||On client side, no distinction between mouse clicks and key events is made.|
|UBA-8295||update JxBrowser to version 2.7|
|UBA-8305||Open up ULCSession for extension|
|UBA-8324||Filter editor not germanized.|
|UBA-8325||Give access to filters currently used in FilterableTableModel and allow setting of them from server side|
|UBA-8327||Improve the javadoc / documentation of application framework error handling|
|UBA-8331||add setAlwaysOnTop to ULCWindow|
|UBA-8332||Make ULCAlert customizable on client side by providing a overridable createJOptionPane() method.|
|UBA-8348||IRendererComponent implementations like ULCCheckBox, ULCLabel,... does not consider setEnabled|
|UBA-8358||if type on ChartBuilder is not set then the exception is thrown inside its coder|
- com.ulcjava.base.shared.NestedException has been marked as deprecated and will be removed in the next release. Developers are highly encouraged to use the java.lang.Exception. This has been already done for extensions like com.ulcjava.base.client.RemoteException, com.ulcjava.base.client.ServiceException, com.ulcjava.base.client.ConnectorException, com.ulcjava.base.client.ServiceException, com.ulcjava.base.client.datatype.DataTypeConversionException, com.ulcjava.container.local.server.LocalContainerException, com.ulcjava.container.servlet.client.ConnectorCommandException.
- Deprecated class LazyLoadingUtilities has been removed.
- Deprecated methods have been removed in com.ulcjava.base.server.ULCListModelAdapter, com.ulcjava.base.server.ULCTreeModelAdapter, com.ulcjava.base.server.ULCTableModelAdapter and com.ulcjava.base.server.ULCTableTreeModelAdapter.
- Old-style and deprecated event mechanism delivery removed (com.ulcjava.base.application.event.UlcEvent)
- Deprecated methods have been removed from com.ulcjava.base.application.table.TableRowSorter
- Deprecated methods have been removed from com.ulcjava.base.client.UITextComponent
- Deprecated methods have been removed from com.ulcjava.base.client.datatype.UIDataType
- Deprecated fields have been removed from com.ulcjava.base.client.UIAbstractButton
- com.ulcjava.applicationframework.application.form.BeanFormDialog#dispose and com.ulcjava.applicationframework.application.form.AbstractFormBuilder#dispose have been removed.
You can find known problems and limitations in our issue database.
Product and company names herein may be trademarks of their respective owners.