Our free LGPL version of SmartClient provides incredible capabilities. In fact, thousands of developers have used it to build cutting-edge web apps.
However, if you need just one of the capabilities available in the Pro edition, the buy versus build decision is a no-brainer.
See what the Pro Edition has to offer below.
Get the Pro EditionThe Pro Edition's Excel Export capabilities allow grid components to export to a spreadsheet or CSV without writing any server code.
Exported data respects column order, sort, search criteria, shown vs. hidden fields, data types (e.g. dates) and hiliting rules. Works with any DataSource type: SQL, JPA, Hibernate, or custom. Read More
Pro Edition allows single and multi-file uploads to be handled as normal DataSource operations, including normal handling of validation errors.
Optional automatic storage to SQL, Hibernate or JPA (no server code required).
Upgrade to Pro Edition, get high-quality charts pre-integrated with our components.
Our HTML5-based charting engine works in all supported browsers, including Internet Explorer and mobile browsers, with no plug-ins required and no requirement to write browser-specific code.
Automatic generation of grid, form, detail and tiled views from Java Beans or SQL tables. Unlike "scaffolding" approaches that leave you maintaining generated code, generation is dynamic, and you can customize any detail of the generated components without losing automatic generation. Read More
Component XML is a format for specifying UI components declaratively in XML. Using Component XML, you can separate the layout of your application from its business logic, so that less technical users can edit the layout while Java developers implement business logic. Read More
Attach role-based security declaratively to DataSource operations. UI components are security-aware and automatically disable UI for disallowed functions. Zero code integration with J2EE Security, Spring Security, or JAAS. Read More
Basic Connectors (SQL, JPA & Hibernate): A one-line declaration enables all CRUD operations (create, retrieve, update, delete) against any SQL table, SQL View, JPA entity or Hibernate entity. No server code is required. Java business logic may be added to modify requests before they are executed by the connector, modify responses, or take any other action. Read More
Reify is a Low Code visual designer based on SmartClient technology. Reify allows non-programmers to build and deploy enterprise applications, or allows programmers and designers to collaborate to build applications which are partly visually designed, and partly IDE-coded. Read More
Share Data and Charts: Export Excel, PDF & Charts: The Pro Edition's Excel Export capabilities allow grid components to export to a spreadsheet or CSV without writing any server code. Exported data respects column order, sort, search criteria, shown vs. hidden fields, data types (e.g. dates) and hiliting rules. Works with any DataSource type: SQL, JPA, Hibernate, or custom. (Examples: SmartClient; SmartGWT.)
PDF Export facilitates the export of any screen or set of widgets as a .pdf without the need to write any server code, with just a single API call (RPCManager.exportContent(widget)). Even works with charts, or with a mixture of widgets and charts. As with other export features, custom server code can take exported PDFs and attach them to emails, save them to databases, or forward them to other systems (Examples: SmartClient; SmartGWT.)
Chart Export, our HTML5 charts, and other widgets based on DrawPane can be exported to PNG & other formats. Charts also support PDF export, so you can export a grid full of data and corresponding chart to the same PDF.(PNG examples: SmartClient; SmartGWT. PDF examples: SmartClient; SmartGWT.).
"Reify" Mockup Importer: Reify takes mockups from Balsamiq and turns them into working screens backed by clean, clear code that is easy to extend and customize. Instead of having developers painstakingly re-create the layout shown in a mockup, just use Reify to import it - a much more efficient development process.
Server Data Binding: Provides a simple Java API for handling requests for data from SmartClient visual components. Automatically parses complex nested search criteria, multi-level sorts, batch requests (multiple operations in one request), binary uploads, optimistic concurrency information (for "long transactions") and other data into a Java request object with clean OO APIs. Can filter response data without the need for separate DTOs (Data Transfer Objects). This avoids hand-written code for request/response handling, which cannot reasonably be generated by eg JAX-B - see FAQ
Requests can be routed to Java classes via simple XML declarations, with a simple architecture for creating custom data connectors which are reusable across different entities. Can intelligently populate Java beans with validated request data, including automatic handling for nested objects, Enums and Generics, and optional XPath-based mapping between request/response data and Java structures.
(Examples: XML routing of requests to methods: SmartClient; SmartGWT. Custom data connectors: SmartClient; SmartGWT. Reusable custom data connectors: SmartClient; SmartGWT. Populating nested objects: SmartClient; SmartGWT. XPath-based structure mapping: SmartClient; SmartGWT.)
Server-side Validation: Both client and server validation are driven from a single XML declaration, with a built-in set of validators similar to XML Schema or JPA restrictions. (Examples: SmartClient; SmartGWT.) Custom client and server-side validators can be added, and a powerful expression language can turn complex cross-object validations into one-line declarations. (Examples: SmartClient; SmartGWT.) Server contact is automatically managed for validators that require it. (Examples: SmartClient; SmartGWT.)
UI Generation: Automatic generation of grid, form, detail and tiled views from Java Beans or SQL tables. Unlike "scaffolding" approaches that leave you maintaining generated code, generation is dynamic, and you can customize any detail of the generated components without losing automatic generation. Without this capability, every screen of your application duplicates the information you already have in your server data model, leading to highly redundant, brittle applications. See the QuickStart Guide, Server Framework Chapter, first section.
Component XML: Component XML is a format for specifying UI components declaratively in XML. Using Component XML, you can separate the layout of your application from its business logic, so that less technical users can edit the layout while Java developers implement business logic.
Components and layouts defined in Component XML can be freely intermixed with programmatically created components.
Since Component XML can be interpreted at runtime, you can store modifiable Component XML screen definitions in a database, or even generate Component XML on the fly from metadata. (Examples: SmartClient, SmartGWT)
Declarative Security: Attach role-based security declaratively to DataSource operations. UI components are security-aware and automatically disable UI for disallowed functions. Zero code integration with J2EE Security, Spring Security, or JAAS. Documentation can be found here and here. Also available as a preview for Enterprise Edition is a pre-built login process and user administration interface. To begin using this functionality now, take advantage of the Jump Start program to receive training and starter code.
Basic Connectors (SQL, JPA & Hibernate): A one-line declaration enables all CRUD operations (create, retrieve, update, delete) against any SQL table, SQL View, JPA entity or Hibernate entity. No server code is required. Java business logic may be added to modify requests before they are executed by the connector, modify responses, or take any other action. For an overview, see the QuickStart Guide, Server Framework Chapter. Note: Basic connectors enable query-by-example search; for Advanced Search, purchase Power Edition or better.
Queuing: Queuing allows multiple data load or save requests from different UI components to be transparently combined into a single HTTP request with guaranteed in-order execution. Queuing makes it easy to reuse data operations across different screens and in different combinations without needing to write screen-specific code to combine operations together. Queuing also makes it simple to define transaction boundaries when data in different UI components need to be saved together. (Examples: SmartClient; SmartGWT.)
HTTP Proxying: The HTTP Proxy allows an application to access to web services hosted on remote servers, which are normally inaccessible to web applications due to the same origin policy. Once installed, the HTTP Proxy provides transparent proxying of requests without further configuration; public sites may wish to whitelist specific services that may be accessed via proxy, for security reasons. (Examples: SmartClient; SmartGWT.)
Reify Visual Designer: Reify is a Low Code visual designer based on SmartClient technology. Reify allows non-programmers to build and deploy enterprise applications, or allows programmers and designers to collaborate to build applications which are partly visually designed, and partly IDE-coded. Learn More >
Isomorphic software provides SmartClient, the most advanced, complete HTML5 technology for building high-productivity web applications for all platforms and devices. SmartClient's powerful device-aware UI components, intelligent data management, and deep server integration help you build better web applications, faster.
Visit Live Showcase