Sunday Apr 04, 2010

Leveraging Servlet 3.0 - Authentication without Forms using GlassFish v3 and Vaadin

The new Servlet 3.0 specification in JavaEE 6 (JSR website, JavaOne Session, VC podcast) packs many new features, including Annotations, Dynamic Registration, Pluggability and Asynchronous Support.

Servlet 3.0 also includes quite a number of security improvements, as described by Kumar a couple of months ago in a Summary of new Security Features in Servlet 3.0. As Ron explains, one of the themes is that Java EE 6 and Servlet 3.0 Converge on Container Security Functionality, another is extra functionality, as explained by Nithya's 3 recent posts ([1], [2], [3]) covering http-method-omission element in web.xml, and the authenticate and login methods of HttpServletRequest.


A great example of the new functionality is Bobby's Authentication Without the Form where he modifies the RIA app in Creating Secure Vaadin Applications using JavaEE 6 to use the new login machinery and thus remove the need for extraneous JSP files.

Bobby's very complete post includes full source code and a nice Screencast; note it requires a recent build of GlassFish 3.0.1 due to a bug in 3fcs.

You may also want to refer to the JavaEE 6 javadocs (e.g. HttpServletRequest) and to the JavaEE 6 Tutorial: Part I (e.g. see Web Application Security) and Part II (requires free registration).

I had not noticed Vaadin previously but it seems to be gaining some popularity; its programming model is strongly server-centric and generates client-code via GWT. You can see a Online Sampler and it recently deployed a Component Directory; its KB has a number of articles on how to use it with GlassFish Server. They also announced deals recently with BlackBelt Factory and with our old Liferay friends.

While chasing the sources for this spotlight I bumped into a number of other Java-based RIA frameworks including: Echo and ZK as well as frameworks like Flex/BlazeDS, GWT, and the JSF-based frameworks we know.

Sunday Nov 08, 2009

Rich web frameworks for GlassFish v3 (ZK, Vaadin, ...)


Vaadin and ZK are both popular RIA frameworks that have been tested to work with GlassFish v3.

The JavaDude has a detailed blog on "ZK 3.6.3 with Netbeans 6.8 Beta on Glassfish V3" (this is the ZK release from a few days ago). It discusses developing with or without the ZK community plugin for NetBeans (which is mostly about adding meta-data to a Java EE project), creating ZUML pages with a component palette and deploying to GlassFish v3. This framework does Ajax and push with no JavaScript exposed to the developer and should be familiar to people used to Swing development. Bobby wrote a blog entry you may want to revisit.

Vaadin is another framework that keeps the developer away from JavaScript. It builds on GWT and has some interesting OSGi features that make it a good fit for the GlassFish v3 modular architecture. Vaadin's Petter has several tutorials showing the use of the GlassFish servlet 3.0 implementation but also how the Vaadin OSGi packaging allows for various options to avoid having to carry the framework with the application. It also discusses having multiple versions of the framework deployed in GlassFish v3. If you're interested, start with this "Deployment Options on GlassFish v3" article.

Both ZK and Vaadin are GlassFish Partners, just like WebORB, ICEFaces (now in Alpha and tested to work in the most recent promoted builds of GlassFish v3) and many others.

Saturday Nov 29, 2008

New screencast - JavaFX and Amphibious Portlets

Amphibious Portlets

Prashant has developed a very interesting combination of Portlet and JavaFX technologies - Amphibious Portlets. Watch and learn as Prashant shows you how to make JavaFX portlets swim on the WebSynergy desktop and on your OS desktop. Very slick and a very useful combination of enterprise and RIA!