New release of Swing - AJAX bridge
AjaxSwing is a web deployment platform for Java Swing applications. It allows developers to implement user interfaces using standard Swing components and to expose that user interface as pure HTML and JavaScript to the browser. AjaxSwing can be thought of as a Java to HTML converter that creates HTML and JavaScript at runtime, unlike GWT that creates it at compile time. AjaxSwing is unique in that it requires no modifications to existing Swing windows and business logic, and does not require programmers to learn any APIs outside of core Java and Swing. Users can run desktop application in a local JRE or open it as a true web application in the browser.
You have to see it to believe it - check out our demo applications.What's new in 3.0
- Brand new Light theme that makes applications shine.
- Automatic detection of asynchronous updates for multithreaded applications
- JTree now support custom cell renderers/editors and updates for them
- JTree now support components with different height for each node.
- JList now support custom cell renderers/editors and updates for them
- JPopup now support custom components inside it.
- JList now support updates for custom components inside it.
- We can now specify custom JS code that should be appended to page from client side.
- We now have property in conf file to reduce font size
- JSlider now renderes labels, fixed JSlider bar position
- Added support for JSpinner component
- Added support for JSeparator component
- JComboBox now support custom cell renderers
- In-Place editing for table cells and tree cells
- JTable now support column selection for right click and double click
- JTable now not refresh table when user change selection in browser (you can now click on checkbox in different row with dynamic event, and it would work correct)
- Support for different height in JTable header, support for header label wrapping
- Support for resizing columns in JTable
- Click in JTable, but outside any row now clears selection
- Added support for custom component in JTable header
- JButton now support mouse listeners, not only action listeners
- Added support for server side JPopupMenu
- Automatic support for buttons that shows popup on event
- New customizable error dialogs for both server side errors and javascript errors, with support of custom css, custom title/text, and auto-refresh feature
- Added configuration parameter to pass text to swing in JEditorPane (sometimes required for correct layout)
- HTTP request info is now available to Swing app via ClientAgent
- Support for file names with characters like " " in export dialog
- Checkbox/RadioButton are now toggled by clicking on text, not just on the box
- You can now configure to remove temp files that are larger than agent.cleanupTempFiles.smallerThan not on session end, but when they become older than agent.cleanupTempFiles.afterTime
Incompatible changes
- agent.classPath now only supports ";" as path separator to avoid conflicts around ":" (on Windows it can be C:\myapp, on UNIX it can be path separator).
- window and component name references no longer support regular expressions syntax and are not based on text. See Specifying Component Property Values for more details.
Standard Edition is free and can be downloaded here

