The AbstractCanvas project provides an API and its implementations, based on the HTML Canvas, to provide a graphics engine for both GWT and AWT, unifying client-side and server-side graphics development. The GWT implementation is based on the incubator's GWTCanvas, the AWT is built on top of Java2D.
Pure Java implementation (Java2D) in a Swing windows
GWTCanvas implementation in Firefox and IE7
Check the introduction here There's also a live demo of a simplistic chart engine built on top of the library:
For the curious, an entry of my blog explains why and how I started the project.