1 2 3 Previous Next 89 Replies Latest reply on Dec 16, 2007 10:54 AM by nugyentv

    Seam & Maven2

    mzeijen

      I think it would be great if there was some support for Maven2 together with Seam. I am not the only one that would want that because there where already several topics on this subject.

      Here is a ref to one of them: http://www.jboss.com/index.html?module=bb&op=viewtopic&t=92547

      The problem that is Gavin doesn't work with Maven2 (yet ;) ) and that is why there isn't any support for it. He said:

      If you guys want solid Maven support, then one of you is going to have to step up and work on it, and promise to maintain it


      I am willing to be that Guy.

      Here is a list with things that I want do:

      - Try to get the Seam libraries into the mayor Maven2 repositories and maintain them.
      - Try to get as many of the dependency libraries, that aren't in the mayor Maven2 repositories, into those repositories.
      - Try to get someone to maintain those dependency libraries in the mayor Maven2 repositories.
      - Create and maintain archetypes for seam (already working on that)
      - Create patches for the generating tool so that it can create Maven2 enabled projects.
      - Write wiki information about Seam and Maven2.
      - Give forum support on Maven2 problems with Seam

      At this moment the biggest problem are the dependencies. Several aren't to be found in the major repositories and from others I need to know the version. I also need to unravel the thirdparty-all.jar into separate libraries, from which I then need to know the version.

      To get this party rolling I need some active support from Gavin (and JBoss). He knows probably everything about the libraries that are used.

        • 1. Re: Seam & Maven2
          gavin.king
          • 2. Re: Seam & Maven2
            mzeijen

            I have seen it and tested it. I find it great that someone else already made something. The problem is that every Maven2, ready to go, solution that I found is incomplete.

            The following stuff is missing or anouyes me.

            - It misses several dependencies so that you really need to rebuild the POM files before you get, for example, UnitTesting to work. And they don't solve the dependency problems (thirdparty-all.jar).
            - I don't want to be dependent on a non-official, or non-JBoss, repository. What happens if they stop being available in a shot while...
            - The archetype generates only a complete project with one war, one jar and one ear file. There aren't any archetypes to create those part separately.
            - The archetype is only meant for a JBoss deployment.
            - They are already behind, because there aren't any Seam 1.1.0 GA, CR1, CR2 or other releases to be found.

            I feel like that there is some 'official' support needed for Maven2.

            • 3. Re: Seam & Maven2
              gavin.king

              OK, I promise we'll support you in this work. I know a bunch of people want this, so this will be very welcome. I'm a total Maven ignoramus, so I'm not sure how much use I'll be to you, but if I'm no help I'll try to track down someone who *can* help. Deal?

              • 4. Re: Seam & Maven2
                ccanning

                I will be willing to help also since I use Maven 2 and I am moving most of my projects over to the Seam architecture. The biggest issue I see right now is the javax.* jars from sun. But, I think through the java.net repository, we might be able to include enough jars to get everything compiling/testing (but I am not 100% sure that everything is there). I have almost everything working right now, but I am currently building my own local repository (especially for the seam jars and a few others).

                • 5. Re: Seam & Maven2
                  mzeijen

                  Great, you got a deal.

                  The first thing I need is a complete dependency list of all the libraries including the libraries that are packed in the thirdparty-all.jar. Per library I need the version that are used.

                  If you want to read up on Maven2 then there is this great free book about it. Here is the TTS's anoucement on it: http://www.theserverside.com/news/thread.tss?thread_id=40126.
                  I read it myself and I can really recommend it.

                  • 6. Re: Seam & Maven2
                    spambob

                     

                    "mzeijen" wrote:
                    The first thing I need is a complete dependency list of all the libraries including the libraries that are packed in the thirdparty-all.jar. Per library I need the version that are used.


                    I would be really interested in those dependencies too, especially that stuff in thirdparty.jar - could you please post this list publicly (perhaps on a wiki page?!).

                    • 7. Re: Seam & Maven2
                      mzeijen

                      @ccanning: What did you do with the thirdparty-all.jar? Did you simply make it a dependency or did you unravel it in multiple dependencies?

                      • 8. Re: Seam & Maven2
                        mzeijen

                        I have been look through the current JBoss maven2 repository at http://repository.jboss.com/maven2. I have noticed that it isn't really maintained. I also have some remarks on the JBoss artifact structure within it:

                        1. Most JBoss artifacts have a groupId of 'jboss' and some 'org.jboss'. I.M.H.O this should be 'org.jboss'. The idea behind the groupId is the same idea behind packages of Java. You should use the domain of the creators of the library as groupId.

                        2. The current 1.01-GA artifacts (core, ui, debug) of seam have the groupId 'jboss'. I.M.H.O this should be 'org.jboss.seam'. This groups the seam libraries within on group and makes it easier to find/maintain.

                        3. The current version used is 1.0.1-GA. This reflects the version that is used by JBoss itself. I am not so sure if it is a good id to use the GA within Maven2 versions. In Maven2 the -{code} behind a version number represents a qualifier. A qualifier is intended to indicate a version prior to a release. So the use of -alpha, -beta, -cr1, etc isn't a problem, but we probably shouldn't use the GA because Maven2 then doesn't see the library as a release. The GA could result in problems with the dependency management of Maven2.

                        Is there someone who I can contact about the Maven2 repository of JBoss?

                        • 9. Re: Seam & Maven2

                          Hi,

                          Im looking forawrd to have the seam artifacts on the repository. I'm willing to help if needed.

                          David

                          • 10. Re: Seam & Maven2
                            mzeijen

                            I am really going to nag on this topic ;).

                            Without the dependency list I can't really proceed :(...

                            • 11. Re: Seam & Maven2
                              fabricio.lemos

                              A few days ago I decided to use seam. I have to tell that it is almost impossible for a starter to use it with maven. Even with the example http://people.opera.com/over/maven2/seam-dvd-1.0.1.zip I had a lot of problems. I never used ant and all my applications are deployed with maven . When Seam get a better maven support, I will give it another try.

                              • 12. Re: Seam & Maven2
                                ccanning

                                Sorry for the late response. I am living in the NW and haven't had power since Thursday. Currently, I don't include the thirdparty-all.jar because it is not needed to compile/test against seam. I actually haven't create a package yet to build seam using maven (which would probably be the best approach to making sure all the dependencies are correct).

                                • 13. Re: Seam & Maven2
                                  mzeijen

                                  Don't you need thirdparty-all.jar for running testng tests? I am at my work now, so I can't test it again but what I remember from last week was that it needed, for instance, the antlr package that is included in the library.

                                  I also believe that the some javax.* libraries are going to be a problem. The license prohibits it from being redistributed, or not? But why can several libraries then be included in the jboss-ejb3-all.jar and sorts?

                                  @ccanning: Good luck with power, I hope it stays on.

                                  • 14. Re: Seam & Maven2
                                    maxandersen

                                    thirdparty-all.jar is basically all the necessary libs that is listed in hibernate/lib directory.

                                    1 2 3 Previous Next