Passa ai contenuti principali

Tomcat Maven plugin tutorial

This tutorial will show you how you can create a Web application with Maven and deploy it using Maven plugin for Tomcat in a matter of minutes. The prerequisite is that you have installed in your machine:
  • Apache Maven 2.X or 3.X 
  • Apache Tomcat 7.X  
  • JDK 1.6 or higher 
We will show how to create the project from Eclipse IDE. From Eclipse File menu choose to create a New | Maven Project:

In the next screen make sure that the option Create a Simple project (Skip archetype selection) is unchecked and select a Workspace for your project:

Click Next. In the following screen choose an archetype for your project. There are plenty of available Maven archetype that are suitable for a Web application to be executed on Tomcat. We would suggest to use the maven-archetype-webapp that will create a startup skeleton for your Web projects:



Finally in the last screen choose a GroupId for your project. Choose an ArtifactId that will match to the Eclipse project name. Select a Version and a Package for your project:


Click finish. Now a basic project will be included in your Eclipse Package explorer:

Configuring Tomcat Maven plugin

In order to be able to deploy/undeploy your project using Maven, we will add Tomcat Maven plugin to our pom.xml:

 
  myproject
  
   

    
     org.apache.tomcat.maven
     tomcat7-maven-plugin
     2.0
     
      /mywebapp
      true
      http://localhost:8080/manager/text
      tomcat
      tomcat
     
    
   
  
 
As you can see, Maven tomcat plugin is based on Maven tomcat7-maven-plugin. If you are using tomcat6 there is a corresponding tomcat6-maven-plugin. Within the plugin configuration we have included some configuration details to reach Tomcat Manager application. The most important part is the Manager URL which needs to be set to: http://localhost:8080/manager/text
Next, mind to include the username and password as contained in the tomcat-users.xml file:

  
  
  
  
  


That's all. In order to build and deploy your application on tomcat 7 using Maven shell, just issue:
 
mvn tomcat7:deploy 
As you can see from Tomcat 7 console, the application is now deployed:

Commenti

Posta un commento

Post popolari in questo blog

Tomcat maxThreads configuration

Tomcat maxThreads represents the maximum number of request processing threads to be created by the HTTPConnector. < Connector port= " 8443 " protocol= " org.apache.coyote.http11.Http11Protocol " maxThreads= " 250 " SSLEnabled= " true " scheme= " https " secure= " true " clientAuth= " false " sslProtocol= " TLS " connectiontimeout= " 20000 " /> This determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to the default value of 200. How the process works: At server startup, the HTTP Connector will create a number of processing threads based on the value configured for the minSpareThreads attribute. Each incoming request requires a thread for the duration of that request. If the number of simultaneous requests cannot be handled by the currently available request processing threads, additio

Tomcat Websocket example

A WebSocket is a full-duplex communication mechanism that allows both textual and binary messages to be sent between clients and servers, without the HTTP request/response life cycle. WebSockets allow either the client or the server to send a message at any time, providing an asynchronous solution for working with data while the user is performing a task. Websockets API are included in Tomcat 7 Web server distribution so you don't have to download any extra library: In this tutorial we will show how to create a WebSocket example using Apache Tomcat and Eclipse. Start by creating on Eclipse a new Dynamic project named websocket-example : We will now create a server side class named WebSocketDemo that is going to echo messages from a Javascript client: package com . sample ; import java . io . IOException ; import java . nio . ByteBuffer ; import javax . websocket . OnMessage ; import javax . websocket . Session ; import javax . websocket . server . ServerEndp

Tomcat session listener example

As part of Servlet 2.3 specification, we can now make use of session creation and destruction events. Our listener object will be called every time a session is created or destroyed by the server. You can use two interfaces as listener for your Session: HttpSessionListener triggers the listener when a new session is created or destroyed HttpSessionBindingListener triggers the listener when an Object is bound/unbound from the Session HttpSessionListener example: package com.sample; import javax.servlet.http.HttpSessionListener; import javax.servlet.http.HttpSessionEvent; public class SessionCounter implements HttpSessionListener { private static int activeSessions = 0; public void sessionCreated(HttpSessionEvent se) { activeSessions++; } public void sessionDestroyed(HttpSessionEvent se) { if(activeSessions > 0) activeSessions--; } public static int getActiveSessions() { return activeSessions; } } As you can see, all you have to do is implementing two meth