Help

Built with Seam

You can find the full source code for this website in the Seam package in the directory /examples/wiki. It is licensed under the LGPL.

Starting with Seam 3, the Seam source code is partitioned into multiple git repositories. As such, there is no longer a Seam core. The core is now JSR-299, other parts of Java EE and Seam Solder (formally Weld Extensions). This makes it easy to add Seam to existing Java EE applications.

FAQ: Why are the modules in separate git repositories?

We are using separate repositories for each module because our plan is to allow the modules to have independent release cycles. That means individual tags and possibly branches. But that doesn't mean we are throwing the multi-module mechanism of Maven out the window. One of the git repositories is a build aggregator, which, when checked out adjacent to the modules is able to build them at once and package a distribution.

All Seam modules use the org.jboss.seam:seam-parent artifact as a parent. This module defines local dependencies for the project (such as the testing framework in use). The parent also imports the org.jboss.seam:seam-bom which defines the current Seam stack - thirdparty and Seam dependencies. The version of the BOM to use is defined by the property seam.version which should be specified explicitly in every module.

If you need to add a dependency to the build, you should consider whether it is a runtime dependency for the module - if it is, you need to add the version to the BOM. If it is only a compile time dependency, then you can just add it to parent.

NOTE

Dependency on the Seam parent and BOM adheres to a release-dependency only policy.

Snapshots for Seam (and Weld) are deployed to the JBoss maven repository. If you want permission to deploy snapshots, please contact Shane Bryzak. If you are wondering, the JBoss snapshots repository (http://snapshots.jboss.org/maven2) is now deprecated.