Thursday Apr 10, 2014

JSF + AngularJS = AngularFaces?

In case you haven't noticed, there's a pretty big shakeup going on in the world of Web UIs. Powered by several factors, JavaScript/rich client frameworks like AngularJS appear to be presenting a serious challenge to the server-side stalwarts of JSF, Spring MVC and the like. What will happen in the long run is anybody's guess.

In the meanwhile we can expect great thought experiments like the one represented by the recent survey results on the future of the view layer in Java EE applications put together by none other than java.net editor Kevin Farnham. Anyone that understands the Gartner Hype Cycle will likely observe that the crest of inflated expectations are probably already in full swing for JavaScript frameworks. In fact I would say that the reactions of the java.net readers if anything was a bit muted in favor of server-side frameworks as were some of the more well thought out comments that Kevin highlights. Another very interesting data point is the surprisingly good support for adding a new action-based/MVC web framework to Java EE in our own Java EE 8 community survey results.

One of my most recent talks titled JavaScript/HTML5 Rich Clients Using Java EE 7 actually tackles some of these very questions. Based on my years of experience working with a wide variety of clients and feedback from some JavaScript rich client early adopters I know well, it looks to me that the near future is likely one of mutual coexistence. In fact I think a very common scenario in the very near term is probably islands of JavaScript/rich client functionality in otherwise server-centric UIs. The ever vibrant JSF ecosystem is actually already busy trying to figure out this interesting puzzle. One of the most interesting such pilot projects is AngularFaces. It combines JSF and AngularJS in a way that almost makes it look too easy. If this is an approach that interests you, it is definitely a project worth checking out, not to mention the blog entry linked.

Do you have an opinion or insight on this you'd like to share? Now is a great time to express it or at least start thinking about it.

Please note that any views expressed here are my own only and certainly does not reflect the position of Oracle as a company.

Thursday Dec 19, 2013

JSF 2.2 New Features in Context

"If the smaller characters are well-written, the whole world of the film becomes enriched. 
It's not the size of the thing, but the detail." 
(Brendan Gleeson)

A lot of airtime is spent on the APIs that were added to Java EE 7 (e.g. WebSocket) and APIs that went through a major revision (e.g. JMS 2.0 or JAX-RS 2.0). But let's not forget that a lot of others APIs have been revised in Java EE 7 and this sometime implies new features, new capabilities.

In this JavaOne session, Roger Kitain and Edward Burns who are both Specification Leads for JavaServer Faces, explains in details some of the important features that were added to JSF 2.2 (e.g. Faces Flow, HTML5-friendly markup, Resource library contracts). Those new features are explained in detail and demonstrated in the context of a self-contained sample application. Ed and Roger also shows that JSF is still relevant in today's enterprise software stack, they finally compares the benefits of upgrading to JSF 2.2 against opting for a totally new architecture.

Friday Jun 28, 2013

Servlet 3.1, Expression Language 3.0, Bean Validation 1.1, Admin Console Replay: Java EE 7 Launch Webinar Technical Breakouts on YouTube


As stated previously (here, here, here, and here), the On-Demand Replay of Java EE 7 Launch Webinar is already available. You can watch the entire Strategy and Technical Keynote there, and all other Technical Breakout sessions as well.

We are releasing the final set of Technical Breakout sessions on GlassFishVideos YouTube channel as well. In this series, we are releasing Servlet 3.1, Expression Language 3.0, Bean Validation 1.1, and Admin Console.

Here's the Servlet 3.1 session:



Here's the Expression Language 3.0 session:



Here's the Bean Validation 1.1 session:



And finally the Admin Console session:



Enjoy watching all of them together in a consolidated playlist:


And don't forget to download Java EE 7 SDK and try the numerous bundled samples.

Tuesday Jun 25, 2013

JSF 2.2, Interceptors 1.2, and JPA 2.1 Replay: Java EE 7 Launch Webinar Technical Breakouts on YouTube


As stated previously (here, here, and here), the On-Demand Replay of Java EE 7 Launch Webinar is already available. You can watch the entire Strategy and Technical Keynote there, and all other Technical Breakout sessions as well.

We are releasing the next set of Technical Breakout sessions on GlassFishVideos YouTube channel as well. In this series, we are releasing JSF 2.2, Interceptors 1.2, and JPA 2.1.

Here's the JSF 2.2 session:



Here's the Interceptors 1.1 session:



Here's the JPA 2.1 session:



Enjoy watching them over the next few days before we release the next set of videos!

And don't forget to download Java EE 7 SDK and try numerous bundled samples.

Friday May 10, 2013

Java EE@JavaOne Russia 2013

JavaOne Russia 2013 was held at the Crocus Expo Center in Moscow on April 23-24. The conference was a resounding success with a great vibe, excellent technical content and numerous world class speakers. Some notable speakers included Werner Keil, Joonas Lehtinen, Heather VanCura, Paul Bakker, Bert Ertman, Talip Ozturk, Anil Gaur, Geertjan Wielenga, Arun Gupta, Jim Weaver, Stephen Chin and David Delabassee. Topics covered included the JCP/JUGs, Java SE 8, Java EE 7, HTML 5/WebSocket, JSF, JMS 2, JAX-RS 2, Java EE Concurrency, JBatch, JSON-P, NetBeans, MySQL, Vaadin, the Oracle Java Cloud, OpenShift, OSGi, JavaFX and Coherence.

 

 

I delivered the Java EE technical keynote, two technical sessions (one on JSM 2 and the other on JAX-RS 2) and three lighting talks (on Java EE Concurrency, JBatch and JSON-P). I also helped deliver two hands-on-labs (on Java EE 7 and the Java Cloud Service). More details on the sessions and JavaOne Russia 2013, including the slide decks and code, posted on my personal blog.

Monday Mar 11, 2013

An Overview of JSF 2.2

Although it is technically only a point release, JSF 2.2 actually has quite a bit of good stuff for JSF fans. In a brief article, Arjan Tijms does a great job of overviewing the big ticket items included in JSF 2.2. He talks about view actions, the Faces flow, HTML 5/pass-through attributes, the file upload component, CDI alignment and more.

If the article whets your appetite to learn more about JSF 2.2, you could download the actual public review draft and give it a read. For those unaware, JSF 2.2 recently near unanimously passed its public review ballot. Bear in mind, the primary audience for a specification document is technology experts/implementors, so this is not necessarily a read for the faint of heart :-). JSF is also one of the larger Java EE specifications - the document is 400+ pages long. However, spec lead Ed Burns did a great job of summarizing the changes towards the beginning of the document in the section titled Changes between 2.1 and 2.2.

Thursday Feb 21, 2013

A Gentle Introduction to the JSF 2.2 Faces Flow

My well-respected colleague and good friend Arun Gupta continues his admirable effort to provide some very early coverage of Java EE 7 features. I thought I'd highlight his blog entry on JSF 2.2 Faces Flows written in this vein.

As many CDI adopters are aware of, Java EE 6 introduced the concept of conversation scopes. The conversation scope is a very simple, lightweight and powerful way of having greater control over application state in workflow-oriented applications (e.g. multi-step wizards). JSF 2.2 Faces Flows takes that concept to the next level by standardizing fairly well-understood workflow modeling concerns that have been been there in ADF Task Flow, Spring Web Flow and Apace MyFaces CODI. The JSF 2.2 Faces Flows are a synthesis of those ideas focused on type-safety, annotations, simplicity and fluency.

In his blog entry, Arun does a good job of explaining the basic concepts. He discusses the feature, explains the motivation, introduces the API, links to a great video demoing the feature and references further resources.

Friday Jan 11, 2013

Ed Burns on JSF 2.2!

The 115th episode of the Java Spotlight podcast features an interview with celebrated JSF spec lead Ed Burns. Ed talks with Roger Brinkley about the history of JSF, it's value proposition, the changes in JSF 2.2 and the future. Ed provides his insight into features like the workflow API, HTML 5 support and multi-templates.

The podcast also covers the status of Java EE 7, the Adopt-a-JSR online meeting, the changes introduced in the JCP in the past year as well as embedded Java. You can listen to the full podcast here.

Friday Mar 30, 2012

Tab Sweep: Java EE 6 Scopes, Observer, SSL, Workshop, Virtual Server, JDBC Connection Validation

Recent Tips and News on Java, Java EE 6, GlassFish & more :

Radio Receiver

How Java EE 6 Scopes Affect User Interactions (DevX.com)
Why is Java EE 6 better than Spring ? (Arun Gupta)
JavaEE Revisits Design Patterns: Observer (Murat Yener)
Getting started with Glassfish V3 and SSL (JavaDude)
Software stacks market share within Jelastic: March 2012 (Jelastic)
All aboard the Java EE 6 Love Boat! (Bert Ertman)
Full stack Java EE workshop (Kito Mann)
Create a virtual server from console in glassfish (Hector Guzman)
Glassfish – JDBC Connection Validation explained (Alexandru Ersenie)
Automatically setting the label of a component in JSF 2 (Arjan Tijms)
JSF2 + Primefaces3 + Spring3 & Hibernate4 Integration Project (Eren Avşaroğulları)
THE EXECUTABLE FEEL OF JAX-RS 2.0 CLIENT (Adam Bien)

Here are some tweets from this week ...

web-app dtd(s) on http://t.co/4AN0057b R.I.P. using http://t.co/OTZrOEEr instead. Thank you Oracle!
finally got GlassFish and Cassandra running embedded so I can unit test my app #jarhell
#JavaEE6 + #NetBeans is really a pleasure to work with!
Reading latest chapter in #Spring vs #JavaEE wars https://t.co/RqlGmBG9 (and yes, #JavaEE6 is better :P)
@javarebel very easy install and very easy to use in combination with @netbeans and @glassfish. Save your time.

Thursday Mar 22, 2012

JSF 2.x's renaissance

JAXenter's Chris Mayer posted a column last week about the "JavaServer Faces enjoying Java EE renaissance under Oracle's stewardship".

ALT_DESCR

This piece discusses the adoption and increased ecosystem (component libraries, tools, runtimes, ...) since the release of JSF 2.0 as well as ongoing work on 2.2.

As Cameron Purdy comments, Oracle as a company certainly has vested interest in JSF and will continue to invest in the technology. Specifically for JSF 2.2, and as this other article points out, a lot of the work has to do with alignment with HTML5 (see this example) and making the technology even more mobile-friendly (along with the main Java EE 7 "PaaS" theme of course).

Chris' article concludes with "JSF appears to be the answer for highly-interactive Java-centric organisations who were hesitant of making a huge leap to JavaScript, and wanted the best RIA applications at their disposal".