News: Java EE 5 Development using GlassFish Application Server published

The first book on GlassFish, titled "Java EE 5 Development using GlassFish Application Server," has been published by Packt Publishing. The book is aimed at Java developers wishing to become proficient with Java EE 5, who are expected to have some experience with Java and J2EE technologies and to have developed and deployed applications in the past, but need no previous knowledge of Java EE. It teaches the reader how to use GlassFish to develop and deploy applications.
What you will learn from this book?
-How to install and configure GlassFish
-How to develop web applications using JSPs, JSTL, Servlets, and JSF
-How to develop applications that interact with relational database systems through the Java Persistence API and JDBC
-How to develop applications using EJB 3, including how to take advantage of container-managed transactions and EJB declarative security through annotations
-How to implement messaging applications through the JMS API
-How to secure Java EE applications via the JAAS API, including how to implement custom security realms
-How to build applications using frameworks that build on top of the Java EE 5 specification, including Seam, Facelets, and Ajax4jsf
The book is aimed at Java developers wishing to become proficient with Java EE 5, who are expected to have some experience with Java and J2EE technologies and to have developed and deployed applications in the past, but need no previous knowledge of Java EE. It teaches the reader
how to use GlassFish to develop and deploy applications.
More information about the book can be found at:
http://www.packtpub.com/Java-EE-5-GlassFish-Application-Servers/book
About the author:
David Heffelfinger has been developing software professionally since 1995, he has been using Java as his primary programming language since 1996. He has worked on many large scale projects for several clients including Freddie Mac, Fannie Mae and the US Department of Defense. He has a Masters degree in Software Engineering from Southern Methodist University. David is editor in chief of Ensode.net (http://www.ensode.net), a web site about Java, Linux and other technology topics.

With all due respect, when is JBoss 5 coming out, so we can get on with a head-head comparison of Spring and EJB3 penetration...more than any single anecdote of non-execution at JBoss, the lack of a legit JEE5 compatible server in the marketplace (I just don't count 4.2x) is giving the impression that they are having some troubles...
I apologize for spreading f.u.d., but it has been far too long to get this going....as the Glassfish machine rolls on....

With all due respect, when is JBoss 5 coming out, so we can get on with a head-head comparison of Spring and EJB3 penetration...more than any single anecdote of non-execution at JBoss, the lack of a legit JEE5 compatible server in the marketplace (I just don't count 4.2x) is giving the impression that they are having some troubles...

I apologize for spreading f.u.d., but it has been far too long to get this going....as the Glassfish machine rolls on....

Just to clarify...you don't consider Glassfish "a legit JEE5 compatible server in the marketplace"? I don't want blow its horn, but the Glassfish machine is rolling forward for a reason.
And I thought JBoss 4.2.x supported EJB3 and JEE5 (I don't follow JBoss that closely).
WLS 10 runs JEE5, and I know there are others. Dunno about WebSphere yet.

Will,
You don't have to check my record on the matter, but I am sprinkled throughout the Internet with my defense of Glassfish, and very much consider them a "legit JEE5 vendor/implementation"...
what I am questioning is JBoss, what the hell is taking so long with v. 5? I don't think it is good enough to have EJB3 support in 4.2x, Seam, and Hibernate: they need a compliant JEE5 app server on the market that developers can work with for plans going forward...
I have not considered this before, but the fact that Spring continues to get attention has very much to do with the fact that JBoss does not have a valid and complete response to the Spring model totally available...
Some will disagree with me, but I think this is hurting sales, hurting mindshare, and definitely hurting JEE5 with the result of splintering the community between old implementations, and the much-improved spec.
Sacha should be on this thread to explain what the roll-out plans are, because I think all this Exadel stuff is getting in the way of what is truly important, and that is to answer the call for a JEE5 server, like soon....

You don't have to check my record on the matter, but I am sprinkled throughout the Internet with my defense of Glassfish, and very much consider them a "legit JEE5 vendor/implementation"...

No, certainly, I didn't actually look at your name.

what I am questioning is JBoss, what the hell is taking so long with v. 5? I don't think it is good enough to have EJB3 support in 4.2x, Seam, and Hibernate: they need a compliant JEE5 app server on the market that developers can work with for plans going forward...

It shows two things I think. One, it shows what is most important to developers, specifically features over the standard. I'm sure many are content that they have JPA and EJB3 beans and annotations with little actual regard for the whether their application is JEE 5 compatible or not.
This distancing and drive from the standard will be even worse in the next, "modular" EJB spec which appears to let containers implement a subset of the EJB spec and still be in compliance.

I have not considered this before, but the fact that Spring continues to get attention has very much to do with the fact that JBoss does not have a valid and complete response to the Spring model totally available...

Some will disagree with me, but I think this is hurting sales, hurting mindshare, and definitely hurting JEE5 with the result of splintering the community between old implementations, and the much-improved spec.

Well another issue is simply the trumping of the POJO over a component framework. EJB being a strong component framework, with all of the governance that implies over a more "free" and more "loose" POJO soup framework. And with Web Services apparently becoming the next wave of Component and service integration, and "anything" can be a web service, this pushes a more structured component based system even farther back.
Just when EJB gets prevailing local interfaces the market shifts to serializing over XML and integrating with ESB et al -- the exact opposite direction.
With the modular more light weight EJB containers and spec coming in the future, the lines separating the components of an EJB application get blurrier and blurrier. When I can bundle Session Beans in my WAR, what exactly do I have? Yea, I don't know either. Do I care? I dunno. For simple stuff, I certainly don't.
But I still use remote calls, even on the same container, to separate my web apps from the core application logic, because I find I share the logic more and more, and it fits better in a more service oriented meme. It's a good boundary to make you think about what you're doing vs the muddiness of working with everything in the same application within the container. I like the structure, and the hoops I have to jump through help formalize the relationships between the tiers.
With the merging of the tiers in the app server, things look more and more like Spring every day. Basically a robust, DB/Transaction Oriented Servlet container. And with Springs momentum, I reckon folks are just going that way now because they like the model. And when the next EJB spec comes out, it will be different enough from Spring for folks to not consider it.

Will,
Good post, I like the analysis, but I will beg to differ on the output focus of JBoss at this time of their existence. For one, they do not have the luxury of being a developer-play, they are a deployment platform that desperately needs to drive revenue to Red Hat, and their jboss.org efforts to get 'betas' out the door on v.5 are not convincing...
I have been talking with and posting on Marcf's blog (http://marcf.blogspot.com), and he has dismissed both Glassfish and Geronimo to a certain extent, which is understandable considering his argument that they have very little real market share in the enterprise. But they are demonstrating an ability to execute that JBoss is not demonstrating right now, and history in the app server market has shown that leaders can come from all angles...
But the wild card is Spring, and I think the ability and/or the extent to which Spring influences, balances, and adheres to JEE6 will be determined over the next 1.5 years of JEE5. If there is very little resistance from JBoss on the component model compatibility (albeit there is some support of EJB3 in JBoss AS 4.2x), they will take the risk of taking developer efforts at the expense of JEE, and not work within the 'system'...
Web Beans is just not proven enough for JBoss to wait, and Glassfish is showing both developers and IT that they are too good for JBoss to rest on a dated platform, I just see that the window is rather ironically closing on v.4.2x, and without v.5 of their app server for customers to begin migrating, they will hold off on all sorts of matters from ESB to Rules to Seam, all to the benefit of Spring and Glassfish...
I am not going to cry for JBoss, but I wanted to question what they are doing, as Glassfish shows no sign of ceasing to execute on JEE5 momentum and implementations...frankly, I think it is time for Sacha or Bill or somebody to get on here and explain what is going on over there, and give the marketplace some sense of when we can expect a competitive JEE5 product...
in the meantime, they are quickly losing the hard-won leadership position that justified $400M, without some clarity on v.5, they are beginning to look more and more like the sub-project that they are today at Red Hat, and not the differentiator that was so espoused at the time of the acquisition...I hate to be harsh, but somebody has got to call a spade a spade, and get some answers...

Well, like I said, I'm not a big follower of JBoss. I don't "hate" JBoss, but I never really liked it either.
What's actually happening, in incremental steps, is that Spring is winning the battle, but may be losing the war.
They're proving how well their particular paradigm to application construction works. We can see that by two things. One, simply the success and popularity of the platform, but also, two, the adoption of some of their techniques in JEE5.
JEE6, it seems, is going to push along even farther down that path and start absorbing even more of it.
Now, I would argue that it's a good thing. You get personal vindication from the "we were right all along" camp, and you get standardization of the core tenets, something I've felt has been an issue for the entire lifespan of Spring.
Basically, I'm betting that JEE6 will do with Spring what JPA did with Hibernate. It will have a distinct "Spring" flavor, but it will be standardized and in same ways made better by be enrobed in the specification, while in others, obviously, it will lose some features of native Spring platform.
Will legacy projects dump Spring for JEE6? Of course not, but new projects will most likely use JEE6 over Spring, just like many project now use JPA over Hibernate. They may well use Hibernates JPA implementation, but many are using TopLink instead (as it comes with Glassfish).
But this is a good thing. I look at how well Gavin King has embraced the process. He's a big fan of JPA, because he's able to do more with it, and it gives him inroads in to projects where he may not have had an opportunity before (perhaps in shops that want to stay with the opens standard specs).
The big issue that's going to blindside JBoss, though, I think is when GF 3 comes out. I don't believe GF 3 is slated to be the RI for JEE6. But, rather, it's going to be the foundation for the later coming RI for JEE6. That's why they're pushing very hard to modularize the platform.
In 2 years, the choice between Tomcat and EJB will be dead. There will no longer be any reason not to choose as EJB (especially with GF3+) will be a pay as you go specification and implementation.
Spring suits those who want "Tomcat with JMS" or some other subset. Spring lets you assemble your container yourself (a primary criticism of mine -- I've never really been interested in "kits").
GF3+ and JEE6 will embrace that pay as you go, take what you want philosophy and let folks scale the container from (powerful) cell phones to clusters.
At that juncture, I think that Spring will look more "eclipse" like to GF's EJB "Netbeans". Eclipse is a fine platform, but you get to hunt down your components. Netbeans bundles everything, but you can easily turn stuff off, and add others. Netbeans give folks a one stop shopping, easy out of the box experience compared to Eclipse. I think GF3+ will do something similar.
Geronimo can do something similar (as can JBoss), as they're both already very modular. The biggest problem facing Geronimo is simply IBM. They seem to treat it as a bait and switch to get folks hooked but then upgrade them to WebSphere. But WebSphere != Geronimo is any way shape or form. And Geronimo doesn't seem to have the backing in development that GF has.
I think it's an exciting time for EJB, frankly, as the container and idioms keep moving foward. It's moving faster now, IMHO, that ever simply because of the maturity of the market. We all know better what we want, and we've had these bubbling cauldrons of development and innovation in the industry for several years and able to prove their mettle. Now, we get to take those lessons and codify it and standardize it, opening and sharing those lessons with a broader audience while not throwing the baby out with the bathwater by severing backward compatability.
I can see how some may think it's simply moving TOO fast (witness the slow adoption ala JEE5), but JEE6 may well let folks leap frog JEE5 in a way and go straight to JEE6. It will not surprise me if GF and BEA are the only 2 major containers that support the full boat EJB spec all the way back to EJB 1.1 Entity beans alongside JEE6 IoC.
But I will say again. I think EJB is healthy. We still get new containers. Adobe (ADOBE!!) has their new container for crying out loud. And with efforts like GF, Geronimo, and JBoss on the open source side, it's a HUGE platform with lots of adoption. JEE5 makes it even easier to adopt, and JEE6 will open up even more choices.

I guess they are busy with the Redhat integration yet.
Their JBoss 5.0 "Beta 1" and "Beta 2" are so terrible that you can not even test them and it has taken too much from the last beta.
I sometimes look at their Jira and it seems to me that the things move very slow there.
I will definitely try Glassfish for my smaller projects.

Websphere is still stuck at JEE 1.4. I haven't heard of any recent updates of it going JEE 5 anytime soon. I do know that they have a WebSphere Application Server Community Edition that is JEE5.
As for Jboss, I think more and more people are liking and adopting Spring and moving away from Jboss. I know of a local company around my metroplex that was a Jboss shop and is moving to Tomcat simply because they don't need everything Jboss comes with and can do most things with Spring.

FWIW, WebSphere has a couple "feature packs" that provide selected Java EE 5 functions on top of WAS 6.1: a webservices feature pack that is already GA, supporting JAX-WS and other WS-* functions, and an EJB 3.0 / JPA feature pack currently in beta and scheduled for release by the end of 2007.
EJB 3.0 feature pack beta site is at https://www14.software.ibm.com/iwm/web/cc/earlyprograms/websphere/was61ejb3/
Randy (IBM)

I have not read this book, but color me cynical as to what value it may really add to the playing field.
It's all well and good to have a Glassfish book, I guess, but if it's little more than a rehash of the stuff available in the JEE tutorials and Glassfish documentation, then I don't know if it's worth the time.
We have a LOT of JEE books out there, and the Glassfish docs are actually quite good. Their biggest issue being that they're more reference than task oriented.
Anyway, it would be nice to see a review of this to see if it's just not a rehash of what we already have.

Why is it that ever since JBoss was purchased by RedHat things have slowed down so much? It's not just the rate at which JBoss software is developed/released, but the documentation is sufferring too.
My naivety led me to believe that RedHat's capital would boost the JBoss team's productivity.
I'll give them the benefit of the doubt and assume they are preoccupied fulfilling other RedHat related needs. I'm still happy using JBoss AS 4.2.x but there will come a time when I need full EJB3 support, and I, for one, am not a fan of Spring.

Netbeans streamlines EE5 development with glassfish the same way Visual Studio streamlines microsoft product development.
And when Creator's portlets development is integrated with Netbeans 6.0, you get a complete development environment out of the box: Just one download, and you get going with web (jsf designer !), Swing, mobile, SOA(JBI) and Portlets tec. and much more.
I have experience with Jboss since 2000, java development enviroments like JBuilder,Eclipse, Silverstream(designer, server) an Visual studio. I think Netbeans with glassfish "is a killer".
I need that book !
Tore Gard Andersen

TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations technology projects - with its network of technology-specific websites, events and online magazines.