Servlet 3.0, Tomcat 7 et Maven

Un petit post rapide afin d’avoir une base de projet pour le développement de Servlet 3.0.

  • Créer un projet webapp avec Maven

mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=com.company -DartifactId=servlet3 -Dversion=1.0-SNAPSHOT

A ce stade, vous pouvez supprimer le fichier web.xml.

  • Ajouter les dépendances nécessaires

Editer le fichier pom.xml et ajouter les dépendances suivantes:

<dependencies> ….
  <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.0.1</version>
      <scope>provided</scope>
  </dependency>
</dependencies>

Et le plugin Tomcat 7:

<build>
   <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.0</version>
     </plugin>
   </plugins>
</build>
  • Créer la servlet HelloWorld 🙂

package com.company;

import java.io.IOException;

import javax.servlet.GenericServlet;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebServlet;

@WebServlet(value= »/HelloWorld », name= »HelloWorld »)
public class HelloWorldServlet extends GenericServlet{
private static final long serialVersionUID = 1L;

     @Override
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
response.getWriter().println(« Hello world!! »);
}

              }

Voilà ce stade, on peut lancer tomcat: mvn tomcat7:run et accéder à notre servlet: http://localhost:8080/servlet3/HelloWorld

Publicités

Utiliser maven pour générer des diagrammes UML

Il est possible d’illustrer la javadoc des projets maven en générant automatiquement des diagrammes UML.

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>1.6</source>
<aggregate>true</aggregate>
<doclet>gr.spinellis.umlgraph.doclet.UmlGraphDoc</doclet>
<docletArtifact>
<groupId>gr.spinellis</groupId>
<artifactId>UmlGraph</artifactId>
<version>4.6</version>
</docletArtifact>
<additionalparam>
-inferrel
-inferdep
-quiet
-constructors
-visibility
-types
-postfixpackage
-nodefontsize 9
-nodefontpackagesize 7
</additionalparam>
</configuration>
</plugin>