11 Replies Latest reply on Jul 12, 2006 5:26 PM by chenrici

    JBoss Seam is just a toy in front of the user using Spring+H

    seto

      I'm told that the JBoss Seam sollution simplified the develop. But at the same time, it reduce the funtionality of the Spring+Hibernate. I'm just told that it's unnecessary to learn JBoss Seam.
      Can someone list some advantage of JBoss Seam? I'm just confused.

        • 1. Re: JBoss Seam is just a toy in front of the user using Spri
          bfo81

          Well, I've been trying out the AppFuse framework which includes JSF+Spring+Hibernate before I started to use Seam. And it was a good decision to switch. Even the author of AppFuse, Matt Raible, says that Seam is great.

          Of course, like everytime you start learning something from scratch, Seam sometimes makes you learn the hard way. But hey, developing web applications in J2EE never goes like reading, trying, adapting, finished. It's not a picnic ;). And learning Spring+Hibernate was - in my opinion - much more confusing.

          Seam closes the gap between JSF and EJB3 (which is much easier than EJB2 was). JSF+Spring+Hibernate means a lot of glue code, but in Seam everything fits >seamlessly< together ;). Just have a look at the examples.

          I believe Seam is the very next step in J2EE webapps and it will surely lead to some sort of official and standardized Java stuff (namely "web beans").

          • 2. Re: JBoss Seam is just a toy in front of the user using Spri
            christian.bauer

            First, I don't think that its about pure functionality, or that one software has more features than another stack. This is a very restricted way to compare things.

            When it comes to web application development I'd look for simplicity, and how this is defined. To me, simplicity means that:

            - easy things are easy to do
            - difficult things are still easy to do
            - the 90% common case can be implemented without effort
            - the 10% more difficult problems can be solved in an elegant fashion

            Seam delivers most of this today even though it is quite young. I think it has the right balance of features for the 90/10 scenario. Naturally, some features and options could mature a little, but that will happen.

            When it comes to integration of Java EE 5.0, Seam delivers deep integration at the level of the programming models, which makes it unique AFAIK. (Hence the Web Beans JSR to bring this back into the standards.)

            • 3. Re: JBoss Seam is just a toy in front of the user using Spri
              christian.bauer

              One further thing I noticed recently. There are two ways how you can learn "Seam", or better "the new way of web app development in Java":

              1. You are an expert with Hibernate, you know the basics of EJB 3.0, you worked with JSF before. If this is your situation, learning most of Seam takes 3 hours. You will be able to use the full feature set right away.

              2. You have used Struts with JDBC before and you never used EJBs or an object/relational mapping tool. You can then learn Seam by starting "from the top", that is, by working your way through the most basic examples and understanding how Seam works. This doesn't necessarily mean you need to learn JSF, Hibernate, and EJB at the same time. You can in fact treat these things like black boxes and only learn enough to use them in a Seam web app.

              • 4. Re: JBoss Seam is just a toy in front of the user using Spri

                I'm a lazy guy, seam allows me to be lazy :)

                • 5. Re: JBoss Seam is just a toy in front of the user using Spri
                  seto

                  Thanks for all your opinion. I will insist my will of learning JBoss Seam.

                  • 6. Re: JBoss Seam is just a toy in front of the user using Spri
                    xiangya

                    Maybe this is great:

                    To seam, Spring+Hibernate just like taking off trousers and then making bomb farts.

                    • 7. Re: JBoss Seam is just a toy in front of the user using Spri

                      Don't underestimate the importance of bringing this stuff back into the standards. After several years of Spring development, do you see any of the code Spring guys trying to bring their ideas back into Java EE? I saw lots of crying about J2EE, but did they contribute back to the Java community for the benefit of everyone? This is really core infrastructure that needs to be a real standard for IDEs/tools, app servers, external libraries, etc... to build on. So now, Java EE has moved on, and Spring will become increasingly less relevant. (not an attempt at FUD - just my personal opinion)

                      With Seam, however, we're not trying to suck you into a proprietary system. We're trying to push Seam's innovations back into the Java EE standards to make sure that everyone can benefit from the simplified development model. I can't wait, for example, to see the first IDEs built around Web Beans. Could you imagine a Web Beans friendly Java Studio Creator type solution? That's the type of things that can be done when innovations are pushed pack into the standard platform.

                      The result is that you can get all the benefits of Seam now, knowing that what you are doing will line up nicely with the future of the Java EE platform.

                      • 8. Re: JBoss Seam is just a toy in front of the user using Spri
                        dhartford

                        Good post Norman!

                        I am very strong on standards -- particularly when there are multiple implementations of a standard that each of strengths and weaknesses on both the implementation level as well as showing where the standard is weak and learn from it.

                        I personally did not look heavily at Seam until the Web Beans JSR and it's future inclusion with the Java EE standards stack. I am hoping for the day a Jboss-competitor will create a Web Beans implementation to compete against Seam on an apple-to-apple comparison (spring vs Java EE is just theological apple-to-orange comparison).

                        Going back to Seto's original post, take a look at bfo81's reply - AppFuse was one of the faster way to develop a web application, but even now people are migrating towards Seam. In the long run Seam may prove to be the better value, but short-term it's dependent on your skill set.

                        • 9. Re: JBoss Seam is just a toy in front of the user using Spri
                          chenrici

                           

                          "norman.richards@jboss.com" wrote:
                          After several years of Spring development, do you see any of the code Spring guys trying to bring their ideas back into Java EE? I saw lots of crying about J2EE, but did they contribute back to the Java community for the benefit of everyone?


                          How stupid! And this by a JBoss "Offical". I am a End-User and currently evaluating different technology options in a hopefully objective and unemotional way. And then i read this discussion in a Support Forum of Jboss.org, looking for help on a Tomcat Server Exception on a Seam Example Project.

                          I am not a Spring Fan: This isn't a football game, so i don't take sides. We evaluate technology to satisfy a complex set of requirements, which are mostly unique in the combination for a company and may even contradict. So there's never, again: never a black and white, a clear cut option. And still you decide and are successful, if you decide right.

                          And another thing, i think i learned over the years: in every science field i know about, creativity and innovation thrives on respect for the contributions for the others.

                          Also
                          "christian.bauer@jboss.com" wrote:

                          - easy things are easy to do
                          - difficult things are still easy to do
                          - the 90% common case can be implemented without effort
                          - the 10% more difficult problems can be solved in an elegant fashion

                          are so terribly misused marketing buzzwords. I heard this so many times in my professional life and have learnt not to believe them: examples from way back: when SQL was made commerially available and MFS was introduced my IBM. Now Relational Databases and SQL are now the legacy (Problem) and MFS is probably not in use much anymore.

                          I am looking into Seam among many other options. And will continue to see how Seam may be adequat for our requirements.

                          But reading this posts and epecially Normans, as a JBoss Official, certainly don't invoke the impression of enterprise trustworthiness. It's the first time i saw, this kind of immature and irrelevant blabling in official support forum. Please be aware of the existents of "soft" requirements: social and cultural factors, which are tremdously underestimated, see also James O. Coplien. (Who's that? you will probably ask...) .

                          Now to my initial intention to visit this forum. I admit i should have posted this in a seperate Thread. But i can't resist.

                          So maybe Norman or Christian can answer me this one:

                          The Seam Example application Issues gives me a Tomcat Exception:

                          INFO 12-07 21:23:30,786 (Log4JLogger.java:info:94) -reading pages.xml
                          ERROR 12-07 21:23:31,705 (Log4JLogger.java:error:119) -Servlet.service() for servlet jsp threw exception
                          java.lang.NoClassDefFoundError: org/apache/myfaces/config/MyfacesConfig
                          at org.apache.myfaces.renderkit.html.HtmlRendererUtils.writePrettyLineSeparator(HtmlRendererUtils.java:466)
                          at org.apache.myfaces.custom.datalist.HtmlListRenderer.encodeBegin(HtmlListRenderer.java:53)
                          at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:512)
                          at javax.faces.component.UIData.encodeBegin(UIData.java:547)
                          at javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:464)
                          at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:360)
                          at org.apache.myfaces.taglib.UIComponentBodyTagBase.doEndTag(UIComponentBodyTagBase.java:55)

                          I am running with Tomcat: apache-tomcat-5.5.17, which i downloaded from the official apache site. And with: jboss-seam-1.0.1.GA.
                          Both out of the box in a "clean" installation.

                          Has somebody experienced simliar problems or can explain me the problem?


                          Thanx
                          Christoph Henrici



                          • 10. Re: JBoss Seam is just a toy in front of the user using Spri
                            gavin.king

                             

                            "dhartford" wrote:
                            I personally did not look heavily at Seam until the Web Beans JSR and it's future inclusion with the Java EE standards stack. I am hoping for the day a Jboss-competitor will create a Web Beans implementation to compete against Seam on an apple-to-apple comparison (spring vs Java EE is just theological apple-to-orange comparison).


                            Right, this is also my hope.

                            I have taken to heart the lesson that "you can't make a technology you own a universal technology". There is a natural tension between ownership and universality.

                            And my core value is to create useful things that many people can use, not create things that I can completely own and control.

                            • 11. Re: JBoss Seam is just a toy in front of the user using Spri
                              chenrici

                               

                              "gavin.king@jboss.com" wrote:

                              And my core value is to create useful things that many people can use, not create things that I can completely own and control.


                              Is that true? Can you tell me what is useful?
                              I have learnt, that usefulness even in science is highly situational and relative. So is'nt it more for you to control the definition of usefulness (aka Marketing)?

                              i personally admire modest people, which building upon the respect for the achievements of others come upon unique things.

                              Christoph Henrici