Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-2731

Fully functional Seam facet and our own overall Seam project wizard

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • 3.0.0.beta1
    • 3.0.0.alpha
    • None
    • Documentation (Ref Guide, User Guide, etc.)

      Problems of current Seam facet:

      • Seam facet creates a few projects (ear, ejb, test) if user selected EAR deployment type.
      • Seam facet replaces configuration files like faces-config.xml, web.xml, etc. So if user already had them
        we just replace it by new ones.
      • Seam facet doesn't take into account settings of other facetes. For example if user added some jsf libs using
        JSF facet page (new web project wizard) seam facet ignores it and adds its own JSF libs.

      What we want to have in new Seam facet:

      • User should be able to INSTALL/UNINSTALL seam facet to web/ejb/ear/java projects.
      • Seam facet should just modify the project when we install it. It should add Seam nature and modify configuration files.
        It should to do it in different ways depending on the project type (web/ejb/ear/java).
      • Seam facet should use settings of other facets if they influences seam project.
      • We should work with old jboss tools projects.

      New Seam Project Wizard:

      • It should allow user to set up facets for web projects.
      • It should create EAR/EJB/Test projects if user selected EAR deployment. Seam facet won't do it anymore.
      • Look&Feel is very similar to what we have now.

      Let's implement it in a few steps (here are steps what we can do for 3.0.0):

      1. Moving EJB, EAR, Test project creation to New Seam Project Wizard.

      Seam Facet should handle new Web project:

      • add seam nature/build
      • set Seam properties
      • copy recourses (pages/java/...)
      • copy/modify configuration files
      • configure hibernate

      New Seam Wizard should:

      • create EAR, EAR, test projects and configure them

      2. Make Seam Facet work with existed EAR/EJB/WAR projects (it can be installed on these kinds of projects).

      2.1. Steps for WAR project if it is a module of EAR:

      • add seam nature/build
      • set Seam properties
      • add libs from Seam Runtime (if it set up or we have default one).
      • copy recourses (pages/java/...) from Seam Runtime. Maybe it's better to disable this feature so far???
      • copy/modify configuration files

      We will copy libs and resources into WAR project, which we copy via New Seam Project Wizard in case of EAR deployment type. If user wants to have this project working he has to add Seam facet to EAR and EJB projects.

      2.2. Steps for WAR project if it is independent project:

      • the same what we do in 2.1. But we will add ALL libs and resources, which we copy via New Seam Project Wizard in case of WAR deployment type.

      2.3. Steps for EJB project:

      • the same what we do in 2.1.

      We will copy libs and resources into EJB project, which we copy via New Seam Project Wizard in case of EAR deployment type. If user wants to have this project working he has to add Seam facet to EAR and WAR projects.

      2.4. Steps for EAR project:

      • add libs from Seam Runtime (if it set up or we have default one).
        We will copy libs and resources into EAR project, which we copy via New Seam Project Wizard in case of EAR deployment type.
      • modify/copy configuration files.

              alexeykazakov Alexey Kazakov
              nivologd@gmail.com Denis Golovin (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: