28.3. Configuring Seam in Java EE 6

If you're running in a Java EE environment, this is all the configuration required to start using Seam!

28.3.1. Packaging

Once packaged into an EAR, your archive will be structured similarly to the following:
my-application.ear/
  jboss-seam.jar
lib/
  jboss-el.jar
META-INF/
  MANIFEST.MF
  application.xml
  jboss-deployment-structure.xml
my-application.war/
  META-INF/
    MANIFEST.MF
  WEB-INF/
    web.xml
    components.xml
    faces-config.xml
    lib/
      jboss-seam-ui.jar
  login.jsp
  register.jsp
 ...
my-application.jar/
  META-INF/
    MANIFEST.MF
    persistence.xml
  seam.properties
  org/
    jboss/
      myapplication/
        User.class
        Login.class
        LoginBean.class
        Register.class
        RegisterBean.class
        ...
You should declare jboss-seam.jar as an ejb module in META-INF/application.xml; jboss-el.jar should be placed in the EAR's lib directory (putting it in the EAR classpath.
If you want to use Drools, you must include the needed jars in the EAR's lib directory.
If you want to use the Seam tag library (most Seam applications do), you must include jboss-seam-ui.jar in the WEB-INF/lib directory of the WAR. If you want to use the PDF or email tag libraries, you need to put jboss-seam-pdf.jar or jboss-seam-mail.jar in WEB-INF/lib.
If you want to use the Seam debug page (only works for applications using facelets), you must include jboss-seam-debug.jar in the WEB-INF/lib directory of the WAR.
Seam ships with several example applications that are deployable in any Java EE container that supports EJB 3.1.
faces-config.xml is not required in JSF 2, but if you want to set up something non-default you need to place it in WAR/WEB-INF.