We're happy — no, ecstatic — to announce that GWT 1.5 is now officially released and available for download.
GWT 1.5 delivers what we think are an impressive number of improvements, about four hundred issues if you're counting. We're also happy that one of those is issue 168, our most-requested feature,
Support for Java 5.
We've blogged about several of the new features already. Now that it's official, let's recap and expand the list a bit...
Java 5 language support and enhanced JRE emulation
You can now use Java generics to add clarity and type safety to your client-side Java source.
Generics also greatly simplify the definition of GWT RPC services — no more
- Simplify your code with for-each loops, autoboxing, static imports, and enum types.
- Subsystems such as RPC, image bundles, internationalization, and benchmarking now use proper annotations. To maximize code re-use, the GWT compiler also ignores unrecognized annotations, such as those required by JPA, that typically appear on types shared between the client and server.
New JRE emulation classes have been added including
LinkedHashMap, and other popular utility classes.
Assertions are now optionally supported in web mode.
If you invoke the GWT compiler using the
The GWT compiler has gotten smarter. It now does comprehensive method inlining,
which can eliminate signficant overhead due to function calls.
Developers using GWT 1.5 release candidate builds have reported speedups of up to 2x,
especially in performance-sensitive areas of their code.
We've even heard from end users that apps compiled with GWT 1.5
just feel faster.Admittedly,
feels fasterisn't a quantifiable benchmark, but we sure like the sound of it.
Treewidget has gotten much faster in GWT 1.5. In tests, we've measured huge improvements across the board, including 5x and 10x speedups on IE7 and IE6, respectively.
Prettier widgets, better DOM, accessibility, and bi-di
- The original KitchenSink sample has been retired in favor of a new sample called Showcase. In addition to demonstrating a wide variety of GWT features — widgets, themes, animation, history, accessibility, internationalization and bi-di to name a few — Showcase helps developers understand how code and CSS fit together by providing the source for each showcased feature.
- Experienced GWT developers know and like the fact that widgets rely almost exclusively on CSS for styling. However, prior to GWT 1.5, GWT projects did not include a stylesheet by default, giving developers new to GWT the unfortunate impression that GWT widgets were inherently ugly. With this release, we're introducing three nice-looking default CSS themes you can use as a starting point for your own designs.
Not only are the standard GWT widgets prettier in this release, they're more functional.
The major widgets such as
TabPanelnow support ARIA for enhanced accessibility. In addition, widgets now support bi-directionality so that UI works properly for right-to-left languages. (You can see all this in action in the Showcase sample.)
Those are some highlights. The (new) GWT Developer's Guide has a more detailed explanation of GWT 1.5 changes, including notes about a few breaking changes you'll want to be aware of.
For further information or for help getting started with GWT, you may find the follow links helpful:
- If you're new to GWT, the Getting Started Guide takes you through a very quick example of installing and using GWT.
- There's a new in-depth GWT tutorial that guides you through the process of building and enhancing an application from scratch.
- If you're particularly curious, you can also browse the entire 1.5 issue list.
We really hope that you'll find that GWT 1.5 helps you build the most sophisticated web apps you can envision. And when you build the next big thing, please share your success stories in the GWT developer forum.