King said Seam eliminates unnecessary programming in filling in the Java Enterprise Edition 5 architecture by integrating EJB 3.0 and JSF into a single component model. He said it eliminates the extra programming, or glue code, needed to make the two components work together. In addition, JBoss Seam extends declarative state management, he said. JBoss Seam applies the concept of declarative state management to application state. Currently, Java EE applications implement state management manually, an approach that results in bugs and memory leaks when applications fail to clean up session attributes. JBoss Seam eliminates almost entirely this class of bugs, he said."Whenever you see people doing state management manually, they are prone to bugs," King said. "Weve seen a lot of success with Inversion of Control [IoC] containers," he said. IoC containers are containers that that help to assemble components from different projects into a cohesive application, said Martin Fowler, chief scientist at ThoughtWorks Inc., in Chicago, in a paper on the subject. King said he borrowed from these frameworks and addressed that issue of state management. In addition, JBoss Seam uses EJBs everywhere and enables process-driven applications, he said. Overall, the simplicity of JBoss Seam is its strength, King said. It enables developers to experience greater productivity and build more robust applications. In addition, JBoss Seam makes use of the annotations feature in Java EE 5, which enables developers to do away with a lot of the XML required by JSF. "We wanted to get rid of all that and allow you to just add an annotation" rather than a lot of XML code to add context. Annotations enable developers to imprint Java code with their own attributes. "JSR-175 [Java Specification Request] is known as a Metadata Facility for the Java Programming Language, so its not about system configuration; its all about declarative programming," King said. King had a busy time on TheServerSide.com Web site describing and defending Seam Monday. Several posters said it looked a lot like the Spring framework. Click here to read about JBoss World, the companys first developer conference. Said one poster: Seam "still doesnt look that simple to me. I think what is needed is Eclipse to hide this low level complexity." Others noted that there has been little love lost between the Spring and Hibernate/JBoss camps. "It definitely is interesting," said Dion Almaer, chief technology officer at Adigio Inc., in Cambridge, Mass., in an interview with eWEEK. But, "first they [JBoss] updated Hibernate to do some things that Spring/Hibernate did, and now Seam is doing the IoC piece that traditionally has been done in Spring." Cliff Schmidt, an open-source consultant in Seattle, called Seam "YAAFYet Another Application Framework." He added: "Except JBoss Seam appears to be another JBoss-controlled community, rather than a truly collaborative and meritocratic community. If its like other JBoss projects, it has been designed by JBoss Inc. and will always evolve according to JBoss Inc.s best interests alone. For users to be willing to take a risk on a project like that, its got to be something newsomething thats not available elsewhere. Years ago, JBoss app server qualified as something new relative to what else was available in open source. However, since Seam is 18 to 24 months behind some of the other open-source frameworks out there, including ones that have much more experience with J2SE [Java 2 Standard Edition] 5 metadata annotations, I dont think users need to compromise by investing in an application framework that evolves at JBoss whim." The beta release of JBoss Seam 1.0 is now available for developers to download and evaluate at www.jboss.com/products/seam. This community release works with Hibernate 3.0, and the final release will work with JBoss Application Server and any application server supporting EJB 3.0. Check out eWEEK.coms for the latest news, reviews and analysis in programming environments and developer tools.