| |
The Sparx Application Platform
Because Sparx comes out-of-the-box with skinable navigation systems, auto validated forms and works on any modern browswer that supports HTML and CSS, it takes hours instead of days to fully prototype your J2EE applications and prep them for Axiom's data bindings and Commons' security authenticators. By starting your development process with Sparx, the bulk of your application's presentation code is generated for you giving you more time to focus on any customization you may have.
- Just declare your input fields, page navigation and validation criteria in simple XML files and let Sparx generate all HTML, error trapping, and Java code for you.
- Create working prototypes, including navigation and data entry, without expert programmers.
- Once your prototypes are complete, drop in the business rules and application logic using standard Java and you'll be able to complete entire application functions in days instead of weeks.
Object-oriented Pages and Forms Increase Reuse
In Sparx, every page and every form (including validation rules, field types, and conditions) are full objects that are cached using instance pooling.
- You can have hierachies of pages that inherit common behaviors (like headers, footers, and meta-data) or delegate their content based on object-oriented principles.
- You can create base form classes that perform common actions and extend them using standard Java inheritance and delegation for specific application requirements. You can even reuse forms and validation rules across projects.
- You can create new field types that inherit behavior from other fields and validation rules that can be reused.
Effortless MVC with Advanced Page Navigation and Workflow
Sparx supports the MVC (Model-View-Controller) paradigm with a sophisticated implementation of the Front Controller design pattern.
- Use simple tags like <navigation-tree> and <page> to define all navigation rules in XML. Create sophisticated layouts that automatically generate HTML without writing any Java code.
- Create multiple navigation trees and conditional pages that are personalized to individual users or roles or act differently based on who their ancestor and parent pages happen to be.
- Leverage the <error-page> tagjav to declaratively handle strongly-typed Exceptions wherever they are thrown.
Sophisticated Forms Managementent and Data Validation
Sparx generates HTML forms supporting keyboard navigation, the ability to stop the user from submitting a form more than once, sub-form validation, composition and generation of the HTML output with fields displayed as fully accessible or in read-only mode, generation of Javascript field-related functions, and automatic capitalization of the text of a field.
- You declare the data entry rules using simple <dialog> , <field> , and <validation> tags and Sparx does the rest.
- Full support for client-side validation, server-side validation, and client-side conditional logic without server-side roundtrips is included.
- A plug-in system is provided for creating your own fields and validation classes and plugging them into the Sparx system.
Switch UI Looks and Feel Without Code Changes
Sparx leverages themes and skins to isolate your user interface from the business rules and app functionality. Designers can concentrate on the UI while engineers do the coding. All UI and look-and-feel changes can be made globally but each page can still control its own appearance.
- Sparx has high-level objects like Dialogs and Fields that automatically know to render themselves using built-in themes and skins.
- If you like what you see already, you'll never have to worry about HTML again. If you want to customize the HTML, though, you can do the customizations in Java or your favorite template engine.
Leverage your Favorite Template Engine
Although Sparx has high-level objects that render themselves, sometimes you need more control or customization. Sparx has built-in support for JSPs and FreeMarker but supports Velocity, Tea, WebMacro, and other templating engines. Don't worry about learning a new template language - just use what you're using today.
Perform Database Record Edits/Updates/Deletes without Java
A special form class, called the SchemaRecordEditorDialog is provided to support zero-Java CRUD operations for record management. If you need to insert/update/delete data to/from your favorite database you can do so simply by declaring XML-based rules and not require a single line of Java. But, customizations are always welcome so you can use standard Java extension mechanisms like inheritance or delegation.
Use the Built-in Report Writer or your Favorite Reporting Engine
Most web based applications have a need for a basic report writer. Sparx includes a fully functional report writer that can take SQL and generate reports with one line of XML or take SQL and pass it on to an XSLT stylesheet for highly customizable output. If you need even more advanced functionality you can attach your favorite reporting engine.
Overview of Sparx Tags
Sparx defines and processes numerous, very high-level, tags that you use to declare presentation components. Using these tags eliminates literally pages and pages of HTML code and thousands of lines of Java code in a typical business application.
Summary of Sparx Features
- Forms and Controls
- Client-side Validation
- Server-side Validation
- Use any template language like JSPs, Velocity, Tea and others.
- Automatic Form Reload on Error
- Dialog Data State Machine
- Complete HTML generation
- Data Binding to Presentation Layer
- Reports
- Navigation and Workflow
- Wireless, PDA, Browser Support
- Multiple skins support (with no code changes)
- Presentation Object Performance Statistics
|