3 Replies Latest reply on Jan 28, 2006 5:57 AM by Gavin King

    Example application demonstrating configuration for 100% of

    Matthew Edwards Newbie

      Would it be possible for you guys to create an example that includes the ability to use all of Seam's capabilities. I don't mean one that has examples within it that can do everything but rather one demonstrating the correct way to configure a project so it can do everything.

      It sounds like a lot of people are have difficulty configuring their applications even though there are a handful of examples. I think where we get lost is trying to figure out how best to put those examples together. I think the DVD app comes close, but it seems to be setup differently than the other examples and is quite complicated to learn from.

      I know it would sure help me out if that were possible.

        • 1. Re: Example application demonstrating configuration for 100%
          Gavin King Master

          By "all" what do you mean?

          You mean like BPM + pageflow + tomcat-deployment + seam-managed-pcs + .... + ....?

          • 2. Re: Example application demonstrating configuration for 100%
            Matthew Edwards Newbie

            Yes, just the configuration files though and not examples.

            I think that Seam is a good tool for beginners who are learning how to use JSF. Seam takes care of all the stuff that developers don't want to worry about.

            It would be nice to have an Eclipse Wizard that knew how to setup a Seam project. It could ask us if we want JSF, Facelets, BPM, pageflow, Tomcat or JBoss support or both, EJB3 or just Hibernate, AJAX, SOAP, and whatever else Seam supports or one day will support.


            I am currently setting up a project 'methodology' that can be used here at the university I am going to. I am trying to make it as simple as possible so that when I leave others can follow the pattern. I have based the entire thing on Seam because it simplifies JSF so much.

            Anyways, I am wondering what the best way to go about a Seam project would be. In summary I have the following:

            * Gather requirements for the system
            * Interview stakeholders and anyone else who will influence the outcome of the system
            * Design the class diagram from collected information
            * Design business processes from collected information
            * Determine use cases and if they belong to a business process
            * Develop activity diagrams from the use cases
            * Determine which activity diagrams will require a Seam conversation
            * Create JSF navigation rules from the activity diagrams that do not belong to a business process
            *Create pageflows from the activity diagrams that do belong to a business process
            * Determine what methods will be called from the JSF navigation rules, pageflows and business processes and to which class they will belong
            * Use this information to update the class diagram
            * Give Seam names to all of the classes in the class diagram
            * Determine which classes on the class diagram will be stateless, stateful, or entity beans.
            * Create Hibernate mapping files to represent the relationships between all of the entity beans (or create the entity beans and persist them to a database)
            * Create the Interfaces for the stateful and stateless beans
            * Reverse engineer a CRUD application from the Hibernate mapping files (or database)
            * Implement the Interfaces to create the stateful and stateless beans
            * Add any helper classes to the application
            * Create a sitemap and draw the possible relationships between the web pages
            * Create a template (or templates) for the website
            * Using what you can from the CRUD web pages, create the web pages for the rest of the site
            * Connect the web pages to the java beans
            * Go through all your code and annotate them using the Seam and EJB3 annotations

            If anyone is interested in helping me fill in the gaps or rearranging the order of the steps then please respond with what you would add or change.
            I will update it and repost until we have the complete process that someone could follow to create a Seam application. If we get a few people working on this I will move it over to the Wiki.

            A few notes;
            I would eventually like to be very specific about integrating Seam into the development process--so we can prove that Seam allows for RAD.

            Also, I am assuming we have a perfectly configured enterprise application with all of the files we need to deploy to a server.