Release NotesOctober, 2010
About Canoo RIA Suite ULC - Update 1
Canoo RIA Suite ULC includes the following new features:
|Builtin-in Animation Effects||The following animation effects may be turn on to provide a richer feedback on state transitions.
|Factory for bordered component with rounded corners||Eases the creation of nice looking compound components.
|Component paints supports radial gradient||
|ULC Enterprise Portal-Integration Package
Please see the Canoo RIA Suite ULC release notes for previous release notes.
To migrate from Canoo RIA Suite ULC to Canoo RIA Suite ULC Update 1, please see the migration notes.
Canoo RIA Suite ULC Update 1 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, the server needs to support either at least the Servlet 2.4 specification or at least the EJB 2.1 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 containers, e.g. Servlet, EJB.
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 PlusULC Table Plus integrates the JIDE grids library that provides a table with various extended features.
Package ULC Web-IntegrationULC Web-Integration integrates the JxBrowser library. With this package you can integrate any web page directly into your ULC Application.
Package ULC Enterprise Portal-IntegrationWith this package you can integrate an ULC Application into your enterprise web applications or your enterprise portal server.
Package ULC Office-IntegrationThis 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 EJB container integration and 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 Tomcat Servlet container|
|thirdpartylicenses||licenses of included third party libraries|
|license manager tool|
|build.txt||Contains the build number|
|LicenseAgreement.pdf||The license Agreement|
|UBA-8239||Setting LnF in an AbstractTestCase results in "IllegalStateException : method must be called on EDT"|
|UBA-8203||MemoryLeak in InputBlocker|
|UBA-8196||Application with an extension does not run on JBoss|
|UBA-8182||Rounded corners are not painted correctly when used with RGBA background color|
|UBA-8181||ULCCheckBox when used as a cell renderer/editor component does not copy the font property.|
|UBA-8160||ULCTable's row selection on Page Up/Down does not work when an instance of ULCTableTree is also visible.|
|UBA-8148||Resource Downloading doesn't work in JNLP mode||Package ULC Office-Integration|
|UBA-8139||The TableModel used by TableBinding does not throw TableUpdate Event on setValueAt|
|UBA-8136||Events such as Action and Expansion that are fired on a Double Click on Tree or Table are lost when a the roundtrip as a result of an event fired due to single click (e.g. selection) takes long.|
|UBA-8135||Providing a wrong URL image to ULCIcon or failure to open image URL due to lack of network results in client side NPE|
|UBA-8132||setting ULCTextArea's text through properties file doesn't work|
|UBA-8093||ULCTableColumn.sizeWidthToFit() throws NullPointerException|
|UBA-7888||ULCWindow.dispose() does not update visible state of window|
|UBA-8212||update JxBrowser to version 2.4||Package ULC Web-Integration|
|UBA-8211||ULCTree does not provide hook for setting a custom selection model.|
|UBA-8200||ULCTableTree client proxy calls repaint() method 3 times on cell edit|
|UBA-8197||Log the ULCSession Id in the Container and ConnectorCommand classes|
|UBA-8172||Builtin Animation Effects - ULCInternalFrame appearance|
|UBA-8170||Builtin Animation Effects - ULCSplitPane divider location change|
|UBA-8169||Builtin Animation Effects - ULCLabel content change fade|
|UBA-7956||Builtin Animation Effects - ULCScrollPane kinetic scrolling|
|UBA-8140||Upgrade Javadoc of ULCNumberDataType to explain setClassType and remove setInteger|
|UBA-8130||provide a factory method to wrap a component with an rounded border|
|UBA-8129||Allow an application to specify the name of the file to be downloaded||Package ULC Office-Integration|
|UBA-8103||Missing javadoc for extensions|
|UBA-7955||Remove com.ulcjava.base.shared.NestedRuntimeException and its subclasses where java.lang already supports them|
|UBA-7863||Improve ULC - Browser Communication when running as applet in a Webpage||Package ULC Enterprise Portal-Integration|
|UBA-7699||ULCIcons resolved via ResourceManager should be cached|
|UBA-8190||Improve the performance of ClientContext.storeFile and ClientContext.loadFile||Performance improvements depending on the service from factor 2 to >1000|
|UBA-821||ClientContext.loadFile(), ClientContext.storeFile() consumes a lot of memory||The memory consumption is reduced by about 40 %|
- com.ulcjava.base.shared.internal.IllegalArgumentException and com.ulcjava.base.shared.internal.IllegalStateException have been marked as deprecated and will be removed in the next release. Developers are highly encouraged to use the java.lang version of these exceptions instead. Because these exceptions are runtime ones, the API did not change. The less sensitive parts of ULC framework have already been migrated: instead of throwing a com.ulcjava.base.shared.internal, they now throw a java.lang one. If, unfortunately, your code is try-catching a com.ulcjava.base.shared.internal exception, you will have to update these blocks. However we expect this to happen very rarely.
- Deprecated com.ulcjava.base.client.dnd.UiTransferable has been removed. Kindly use com.ulcjava.base.client.dnd.DefaultTransferable instead.
You can find known problems and limitations in our issue database.
Product and company names herein may be trademarks of their respective owners.