Release Notes

April 6, 2004

About ULC 5.2

Release 5.2 includes the following new features:

The sections Fixed Bugs and Implemented Feature Requests give an overview of the most important differences between ULC 5.1.3 and ULC 5.2.

Version Notes

ULC 5.2 requires the Java Runtime Environment (JRE) 1.3.1 or later. It should run on any platform that supports JRE 1.3.1 or later.

The ULC client has been tested on Windows 2000 with the following deployment options:

The ULC server has been tested on Windows 2000, Red Hat Linux 9.0, and Sun Solaris 8 with the following deployment options:

The ULC launcher plug-in requires Eclipse 2.0 / WebSphere Application Developer 5.0 or higher

What's in this Release

ULC 5.2 includes the following components:

Release Structure

ULC 5.2 is distributed with the following directory and file structure:
releasenotes.html this file
LicenseAgreement.pdf ULC software license agreement
build.txt contains the build number

previous_releasenotes Previous release notes

doc ULC documentation
apidoc JavaDoc
ULCDevGuide.pdf ULC Developer Guide
ULCWhitePaper.pdf ULC White Paper

base ULC base framework
ulc-base-client.jar client base module (used for client deployment)
ulc-base-server.jar server base module (used for servr deployment)
ulc-base-development.jar development base module (additions for application development)
src Source stubs (to support IDE code completion)

container J2EE server integration

ejb EJB container integration
ulc-ejb-client.jar client ejb module (contains connector to EJB container)
ulc-ejb-server.jar server ejb module (contains EJB container adapter)
src Source stubs (to support IDE code completion)

servlet servlet container integration
ulc-servlet-client.jar client servlet module (contains connector to servlet container)
ulc-servlet-server.jar server servlet module (contains servlet container adapter)
src Source stubs (to support IDE code completion)

environment client environment integration

applet applet deployment
ulc-applet-client.jar client applet module (contains applet integration)
ulc-applet-server.jar server applet module (contains server component to access applet content pane)
ulc-applet-development.jar development applet module (contains embedded applet development runner)
src Source stubs (to support IDE code completion)

jnlp jnlp deployment
ulc-jnlp-client.jar client jnlp module (contains launcher for jnlp deployment)
src Source stubs (to support IDE code completion)

standalone standalone deployment
ulc-standalone-client.jar client standalone module (contains launcher for standalone deployment)
src Source stubs (to support IDE code completion)

sample ULC sample applications

tomcat Ready to run Tomcat servlet container with all samples
ROOT.war web application archive containing all the samples
startServer.bat batch file to run Tomcat shell script to run Tomcat
startClient.html link to start the browser

hello simple hello world application
hello-server.jar hello application classes (to be deployed to the server)
hello.war hello web application (servlet container with applet and jnlp client)

pie sample application illustrating the extension mechanism
pie-client.jar pie extension classes
pie-server.jar pie application classes (contains the server side extension)
pie.war pie web application (servlet container with applet and jnlp client)

teammembers sample application illustrating a master detail view
teammembers-server.jar teammembers application classes (to be deployed to the server)
teammembers.war teammembers web application (servlet container with applet and jnlp client)

ulcset sample application illustrating the use of most ULC widgets
ulcset-server.jar ulcset application classes (to be deployed to the server)
ulcset.war ulcset web application (servlet container with applet and jnlp client)

ulcdndset application showing Drag & Drop in ULC
ulcdndset-server.jar ulcset application classes (to be deployed to the server)
ulcdndset.war ulcset web application (servlet container with applet and jnlp client)

ide IDE integrations
websphere IBM�s WebSphere Studio development environment the zipped plugin

Fixed Bugs

PR Description Comments
557Serialization of ApplicationLocals Cannot be fixed for static ApplicationLocals! So we decided to deprecate the ApplicationLocal class and remove it in a later ULC release. As a replacement the following API has been introduced on the ApplicationContext class:
  • getAttributeNames()
  • getAttribute(String key)
  • setAttribute(String key, Object value)
  • removeAttribute(String key)
Please use this API now to have static access in your ULC applications.
628Iconized ULCInternalFrame does not get restored when using ULCInternalFrame.setIcon(false); 
629ULCInternalFrame.setMenuBar() does not work after widget is uploaded  
630ULCInternalFrame.getTitle() does not work 
632ULCSplitPane.setDividerLocation() throws IllegalArgumentException on UIEngine  
656ServletConnector cookie handling interferes with browser/plug-in cookie handling  
671VersionInfo not available in specific deployment scenarios 

Implemented Feature Requests

PR Description Comments
100Access components of containers Added the following API:
  • ULCBoxPane.getComponent()
  • ULCBoxPane.getComponents()
  • ULCBoxPane.getComponentCount()
  • ULCBoxPane.getRowOf()
  • ULCBoxPane.getColumnOf()
  • ULCBoxPane.getHorizontalSpanOf()
  • ULCBoxPane.getVerticalSpanOf()
  • ULCBoxPane.getAlignmentOf()
  • ULCBorderPane.getComponent()
  • ULCInternalFrame.getComponent()
  • ULCRootPane.getComponent()
  • ULCCardPane.getNames()
525Need of fixed columns in ULCTable like swing-JViewport This functionality can be added by writing an extension for ULCTable. The sources contained in the ULCGnats problem report description show the trick. The extension supports renderers for both the fixed and the regular columns.
598Implementations of IFileService.storeFile() return different values for the name of the saved file Jnlp is not capable of delivering the file path of the opened/stored file. The JnlpFileService has been changed to
  • returning 'null' as file path when opening a file
  • returning 'null' as file path when storing a file
  • returning a ServiceException when choosing a file
616, 618, 619, 622Garbage collector supported memory management ULCProxy.release() is now deprecated API, actually this API is implemented as a no op
625Sample war files should be WebSphere installable 
633Add messageType property to ULCAlert Added the following APIs:
  • ULCAlert.setMessageType(int)
  • ULCAlert.getMessageType()
Added the following message types:
The default message type is ERROR_MESSAGE which results in a similar icon as before.
637ULCTextComponent.setDisabledTextColor() is not available 
639Performance problem when rendereres and editors are used 
647HTMLEditorPane.setText() does not work with "content" and "http-equiv" attributes in meta tags 
652, 656ULC session handling should support arbitrary cookie key/value pairsULC now uses a RFC2109-compliant HTTP state management (cookie management)
657API to access Servlet container environment The ServletContainerContext now provides the following methods:
  • public static HttpServletRequest getRequest()
  • public static HttpServletResponse getResponse()
  • public static ServletConfig getServletConfig()
  • public static ServletContext getServletContext()
658API to access cookies and header fields on client side 
662Run ULC Application without cookies 
664Default logging should be enabled for sampleslog-level is not set to WARNING for all sample applications, both on server and on client side.

Known Problems and Limitations

Product and company names herein may be trademarks of their respective owners.

Copyright (c) 2000-2015 Canoo Engineering AG