Generating a Jetspeed Portal

The easiest way to start a custom portal project is to use the Jetspeed Archetype to generate a Maven project. An archetype is a template that you can use to generate a boilerplate project. Technically it is not required to use Maven, but it is recommended because it will give you more control over your build and release management. Also the generated project will keep your customizations clearly separated from core Jetspeed functionality, and will make updates to newer Jetspeed version easier.

To create a new custom portal named jetexpress, enter the following command in a location of choice:

mvn org.apache.maven.plugins:maven-archetype-plugin:2.3 \
    -DarchetypeGroupId=org.apache.portals.jetspeed-2 \
    -DarchetypeArtifactId=jetspeed-archetype \
    -DarchetypeVersion=2.3.0 \
    -DartifactId=jetexpress \
    -Dpackage=org.apache.portals.tutorials \
    -DgroupId=org.apache.portals.tutorials \

Paste into Command Line:

With this command you specify which archetype to use (archetypeGroupId, archetypeArtifactId), and which version of the archetype (archetypeVersion). In addition you specify a number of parameters that will be used by Maven to uniquely identify your project: a name (artifactId) and group (groupId), a package name (package), and a version (version).

Maven will ask you to confirm the groupId, artifactId, version and package for your project:

Confirm properties configuration:
groupId: org.apache.portals.tutorials
artifactId: jetexpress
version: 1.0-SNAPSHOT
package: org.apache.portals.tutorials
Y: : 

Simply confirm the values by pressing Enter.

Maven will then generate the project and finish with the message "BUILD SUCCESSFUL". A directory named jetexpress will have been created.

Notice that jetexpress will be the name of your portal, not jetspeed. The idea is that you can create a customized portal based upon Jetspeed, but with a different name, customized to meet your organization requirements.


Now that you have generated your portal project, let's take a look what's inside the project. What files and folders were generated, and what are they for?

Previous - Next