blob: 89a7636c939fec9be289aec1b647fe9cebe98fb6 [file] [log] [blame]
Title: TomEE Maven Plugin
###Add The TomEE Maven Plugin To An Existing Project
If you already have a maven project set up then just add the plugin as described [here](maven/index.html)
You will likely need the full Java EE API added to your pom file:
<dependency>
<groupId>org.apache.openejb</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0-6</version>
<scope>provided</scope>
</dependency>
The simplest path is to allow Maven to create an example project for you. Even if you have an existing project you can always use the template as a reference.
###Generate a Basic TomEE-Project With Maven
TomEE provides a maven-archetype for generating a template project. This template project is preconfigured with `javaee-api` (scope provided) and with the [`tomee-maven-plugin`](maven/index.html) for starting the application with TomEE.
For example, if current version of the archetype is '1.7.1', then the required command to generate an application would be:
mvn archetype:generate -DarchetypeGroupId=org.apache.openejb.maven -DarchetypeArtifactId=tomee-webapp-archetype -DarchetypeVersion=1.7.1
The first time you run this command maven downloads the archetype and some parts related to it. Afterwards you see a prompt which allows you to specify the groupId, artifactId, version and package of your application.
If you are using 'tomee' as groupId, 'tomee-demo' as artifactId, '1.0' as version and 'myapp' as package, your console should show something like:
Define value for property 'groupId': : tomee
Define value for property 'artifactId': : tomee-demo
Define value for property 'version': 1.0-SNAPSHOT: : 1.0
Define value for property 'package': tomee: : myapp
Confirm properties configuration:
groupId: tomee
artifactId: tomee-demo
version: 1.0
package: myapp
...
[INFO] BUILD SUCCESS
...
Afterwards you see a new folder with the name you used for the artifactId (in the previous example 'tomee-demo').
For starting the application you have to change the current directory to the directory of the generated application:
cd tomee-demo
###Starting a TomEE-Project with Maven
With using the archetype everything you need is in place already. So you just have to start TomEE with:
mvn package tomee:run
The first time you run this command takes a bit longer, because maven has to download e.g. TomEE.
Once those parts are downloaded, starting maven, deploying and starting the generated application takes less than 10s (depending on your computer).
###Accessing a running application
The application gets deployed to `target/apache-tomee/webapps`. If everything worked correctly, you should see a directory ('ROOT') as well as a web-archive ('ROOT.war').
The context-paths of the deployed application is ROOT. In our example the generated application contains a servlet mapped to '/index'. So you can access it via:
http://localhost:8080/index