8.0 is another monster release, with spectacularly powerful new features and a gorgeous look & feel refresh. The following features have been
SmartClient 5.6 has the following major themes. See below for a detailed list of changes.
- Visual Builder: The Visual Builder tool, long marked as a "preview", is now
officially released. The new version has a DataSource Creation Wizard, DataSource Editor, the
ability to save multiple files, and dozens of fixes
- Metadata Engine: SmartClient can now layer presentation attributes on top of
imported metadata (dataSource.inheritsFrom), handle fully hierarchical metadata models,
radically simplify XML round-trip editing (form.useFlatFields). This all adds up to the
ability to drive SmartClient applications from your existing metadata, customizing and
extending the presentation, while still retaining a live connection to your changing metadata.
- Spring and Hibernate Integration: Built-in functionality and extensive examples for
integration with these two popular Java frameworks
- Eclipse Tooling: A SmartClient plugin for Eclipse that runs inside the
ATF plugin, allowing drag and drop, dialog-driven
editing of SmartClient components (available as a separate package at
- History Module: allows the browser "Back" and "Forward" buttons to trigger actions
within SmartClient applications instead of going to a new page, as well as the ability to make
the current application state bookmarkable.
- RichTextItem: components for editing HTML in a browser, with configurable styling
- DataBound ValueMaps: via "optionDataSource", SmartClient components can view, edit,
and save values that point to records in another dataset, even when the datasets have
completely different sources (eg Hibernate + WSDL web service)
SmartClient 5.5.1 is a maintenance release with small feature additions and documentation updates.
- added support for unlimited numbers of tabs: a compact scrolling / tab picking interface
will appear automatically if there is not enough room for all tabs
- fixed a new Firefox 2.0-only issue that affected some applications launched via
- new top-level Concept docs on Debugging and JSF integration
- fixed an issue with Firefox truncating the value of XML elements if a single element had
more than 4096 bytes of data
- fullscreen examples in the Feature Explorer now launch within the same browser window
- fix for a bug where a databound selectItem that also had an explicitly specified valueMap
could JS error
- fixed server logs tab preventing access to other tabs if accessed when ISC server is not
- added a help pane to Visual Builder application
- fixed an issue where if a ListGrid doing inline editing in a modal dialog showed a
pickList, parts of the underlying dialog would no longer be masked
- fix for the bug where checking for row edits would JS error if an edit value had been set
for a fieldName with no field definition
SmartClient 5.5 implements the following themes and features:
1. SmartClient SDK Explorer
This small SmartClient application replaces the old SDK homepage with an interactive, window-based launcher for SmartClient developer resources. To use the SDK Explorer:
- single-click on any icon to open that resource or folder
- click on links below certain icons to view example source code
- click the top-right control in the "SmartClient SDK Explorer" window header to switch between window and tree views
- right-click anywhere on the page for a quick menu to all SDK resources
- double-click on any item in the tree view to open that resource or folder
The source code for this application is located in
docs/resources/, with some comments for the curious.
2. Rich look & feel
SmartClient GUI components and services have been broadly enhanced to support a range of new visual effects and customized themes, including:
- optional image-based skinning of most components
- image-based borders, allowing custom corner and edge effects on any component
- customizable drop shadow effects for any component
- robust support for embedded icons in all action components (buttons, tabs, dialogs, menus, trees, headers)
The "SmartClient" theme has been upgraded to take advantage of these new features. This skin is now applied to the SDK Explorer, Demo Application, and Hello World examples. If you are interested in creating your own rich GUI themes, start by examining
isomorphic/skins/SmartClient. Check with technical support for the status of undocumented skinning interfaces.
The skinning interfaces will be documented separately in an upcoming release. For more information on the relevant APIs in this release, search the SmartClient Reference for the terms "edge", "shadow", "icon", or "src".
Note: The old "SmartClient" theme has been renamed "fleet", and is still available in
3. Animation effects
SmartClient visual components now implement a wide range of animation effects, to increase usability and improve user experience. For live examples of many of these effects, see SDK Explorer > Examples > Animation
. The SDK Explorer itself demonstrates several window animation effects (expand, collapse, flash, and minimize).
To explore all SmartClient APIs related to animation, search for "animat" in the SmartClient Reference.
4. Background resource loading
In addition to background data operations and remote procedure calls, SmartClient provides interfaces for background loading of:
- HTML pages, portlets, tiles, and other fragments
- additional SmartClient components
- additional client-side logic
without reloading your entire application. For more information, see the SmartClient Reference
evalVars attributes of
Simple usage examples are also provided in
5. Client-side XML/WSDL integration
SmartClient now provides easy interfaces to consume and process XML resources directly in the web browser, including:
- XML documents
- XML schema
- XSLT transformations
- WSDL web service definitions
- web service operations
For more information, see the SmartClient Reference
Data Binding > Web Service Binding
Data Binding > WebService
Data Binding > Client-side Custom DataBinding
Data Binding > DataSource (group
Data Binding > DataSource > OperationBinding
Data Binding > XMLTools
Simple usage examples, including client consumption of RSS feeds, are provided in
examples/dataBinding/. XML loading and XSLT transformations are also provided directly under the XML tab of the SmartClient Developer Console.
Note: These capabilities are not currently available in MacOS Safari web browsers.
6. Rich form controls
SmartClient 5.5 provides a collection of enhanced form controls, including:
SectionItem — a divider control for "accordion" forms
ComboBoxItem — a dropdown control with filter-on-keypress capability
PickTreeItem — a hierarchical selection control
SpinnerItem — a numeric control with increase/decrease buttons
SliderItem — the draggable Slider component, now supported in forms
SpinnerItem controls are used in the SmartClient Demo App in this package.
Please refer to the SmartClient Reference for more information on these new controls.
7. DataSource operation bindings
objects now support custom bindings at the operation level. Each DataSource operation (Fetch, Add, Update, Remove) may be bound to a different WSDL operation, XML feed, or server object/method. For detailed documentation, see the SmartClient Reference
Data Binding > DataSource > OperationBinding
Data Binding > Client-side Custom DataBinding
Data Binding > XJSONDataSource
For an overview of all DataSource integration options, see the Client-Server Integration topic
8. Direct Method Invocation
SmartClient now provides a direct method invocation (DMI) path for server integration. DMI enables you to bind DataSource operations and RPCRequests directly to methods or attributes of your server objects. For detailed documentation, see
RPC > DMI
in the SmartClient Reference
. This documentation also references the DMI code examples in:
In addition to the core feature areas listed above, SmartClient 5.5 provides an assortment of enhancements including:
- End user application layout with
SectionStack components — see
examples/demo_app/demo_app_JS_dragPanes.jsp for example
- Flexible back button support — see
examples/components/backButton.html for usage
- Deeper Struts integration — see
examples/struts/ for integration of SmartClient Ajax form validation with existing
- Modular Ajax client — separate Ajax client modules for independent loading of standard capabilities (Core, Foundation, Containers, Forms, Grids, DataBinding), advanced options (Analytics, FileLoader, RealtimeMessaging) and custom feature packages
- Resource preloading & caching — using the
FileLoader service of the optional SmartClient Network Performance module
Sneak Preview: Visual SmartClient
This release also includes a "sneak preview" of the in-development Visual SmartClient
application builder. You can launch this browser-based development tool from SDK Explorer > Tools > Visual Builder
. This Visual SmartClient preview provides:
- drag & drop creation and editing of your visual component tree (layouts, forms, grids, controls, etc)
- drag & drop binding of pre-defined DataSources to visual components
- property-sheet editing of visual components, with integrated online help (hover over property names)
- real-time WYSIWYG preview of your application
- real-time generation of XML and JS application code
This preview is provided for evaluation only. Licensing and support of the Visual SmartClient tools are not yet formalized.
©2010 and beyond Isomorphic Software, Inc. All rights reserved. Your use of this software
is subject to the License Agreement.
Isomorphic Software, SmartClient, and all Isomorphic-based names and logos that appear herein are
trademarks or registered trademarks of Isomorphic Software, Inc. All other product or company names
that appear herein may be claimed as trademarks or registered trademarks of their respective owners.
This product includes software developed by the Apache Software Foundation (http://www.apache.org/).
This product includes Hypersonic SQL.