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.
This document describes the current feature set of the first generation seam-gen, which we need to be sure to maintain (and naturally improve on) in the process of redesigning the tool.
Near the bottom is an itemization of the files that seam-gen and JBoss Tools share. For a good overview of how a seam-gen project differs from a project created by JBoss Tools, see this post by Xebia Blog. One of the main goals of Seam Forge is to eliminate the differences while at the same time bolstering functionality.
This list is a work in progress. Some of the capabilities that seam-gen adds to a project may not be represented in this list.
This section describes many of the files which are present in seam-gen projects. Note that at this time they are specific to JSF, though seam-gen should eventually be able to create non-JSF projects to demonstrate Seam's integration with alternate web frameworks (Wicket, GWT, etc).
The following is a list of seam-gen files that are used by the JBoss Tools Seam plugin. The files are mapped to their destination within the project.
Source | Destination |
---|---|
resources/META-INF/persistence-dev.xml (or persistence-dev-war.xml) | src/main/META-INF/persistence.xml |
resources/WEB-INF/components.xml (or components-war.xml) | WebContent/WEB-INF/components.xml |
resources/WEB-INF/faces-config.xml | WebContent/WEB-INF/faces-config.xml |
resources/WEB-INF/jboss-web.xml | WebContent/WEB-INF/jboss-web.xml |
resources/WEB-INF/pages.xml | WebContent/WEB-INF/pages.xml |
resources/import.sql | src/main/import.sql |
resources/datasource-ds.xml | resources/@projectName@-ds.xml |
resources/messages_en.properties | src/main/messages_en.properties |
resources/security.drl | src/main/security.drl |
view/* | WebContent (FreeMarker templates processed appropriately) |
test/*.java | test-src (in -test project; FreeMarker templates processed appropriately) |
src/*.java | src/hot or src/main (FreeMarker templates processed appropriately) |
pojo/GetPropertyAnnotation.ftl used in reverse engineering | |
util/TypeInfo.ftl used in reverse engineering |
Note that some files undergo post-processing by seam-gen (commandline script) when creating the project to account for differences between the two projects. For instance, the <use-java-context> setting in the *-ds.xml files needs to be false for seam-gen projects but true for JBDS. The persistence.xml files for the dev profile in seam-gen projects needs to strip the java:/ JNDI prefix for the datasource and be infused with the transaction manager Ant token. These changes allow the seam-gen project to accommodate GlassFish deployments in addition to JBoss AS.