web-dev-qa-db-fra.com

Archétype Maven pour une application simple Servlet

Existe-t-il un archétype Maven 2 pour une application Web simple Servlet (2.5)? 

44
deamon

Il est un archétype pour webapp :

mvn archetype:generate -DgroupId=com.acme \
                       -DartifactId=my-webapp \
                       -Dversion=1.0-SNAPSHOT \
                       -DarchetypeArtifactId=maven-archetype-webapp \
                       -DinteractiveMode=false

Cela générera la structure suivante:

 $ arbre my-webapp /
 my-webapp /
 pom.xml 
 └── src 
 └── principal 
 ├── ressources 
 └── webapp 
 ├── index.jsp 
 └── WEB-INF 
 └── web.xml 

Où le fichier web.xml est un Servlet 2.3 web.xml:

$ cat my-webapp/src/main/webapp/WEB-INF/web.xml 
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://Java.Sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>
</web-app>

Pour une application Web Servlet 2.5, remplacez-la par quelque chose comme ceci:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://Java.Sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://Java.Sun.com/xml/ns/javaee http://Java.Sun.com/xml/ns/javaee/web-app_2_5.xsd"
  version="2.5">
  <display-name>Archetype Created Web Application</display-name>
</web-app>

Je ne sais pas pour NetBeans mais Eclipse (plus précisément M2Eclipse) repose sur le web.xml pour définir les facettes du projet (vous devez donc modifier le web.xml avant l'importation, Eclipse ne mettra pas à jour la facette Web si vous modifiez le web.xml après le faits).

65
Pascal Thivent

J'ai créé un archétype simple pour la création d'applications Web basées sur Servlet 3: http://maciejwalkowiak.github.io/servlet3-maven-archetype/

Il suffit de le cloner, d'installer et de générer un projet utilisant Servlet 3, pas de XML, prêt pour Tomcat7 (plug-in inclus)

13
Maciej Walkowiak

vous pouvez commencer avec 

mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp

Pour une liste des autres archétypes, veuillez vous référer à liste des archétypes

3
diy

Numéro d'archétype mis à jour.

Note: Par défaut, l'archétype 'maven-archetype-webapp' génère l'application Servlet 2.3. Pour passer à Servlet 2.5, veuillez suivre post # 1343356 de Pascal Thivent


Reportez-vous à ce lien Liste exclusive d'archétypes Maven et suivez ce lien pour Comment utiliser cet archétype .

Les numéros d'archétype fréquemment utilisés sont:

  • 610 -> org.Apache.maven.archetypes: maven-archetype-webapp (archétype contenant un exemple de projet Maven Webapp)
  • 600 -> org.Apache.maven.archetypes: maven-archetype-j2ee-simple (Un archétype contenant un exemple d'application J2EE simplifié.)

OU tout simplement utiliser ci-dessous le commode maven

$ mvn archetype:generate -DgroupId=com.sample -DartifactId=servlet-app -Dversion=0.1-SNAPSHOT -DarchetypeArtifactId=maven-archetype-webapp
1
jeevatkm
  • Créer un projet maven à l'aide de l'archétype maven-archetype-webapp

commande: mvn archetype: create -DgroupId = com.lei.webapp.quickstart -DartifactId = webapp-quick-start -DarchetypeArtifactId = maven-archetype-webapp 

  • Ajoutez la dépendance suivante dans pom.xml: 

    javax.servlet servlet-api 2.5

1
Bimales Mandal

Je laisse le IDE (le mien s'appelle Intellij IDEA) créer la structure webapp de base pour moi.

Aller à:

Fichier → Nouveau projet → Créer à partir d'un archétype → ... archetype-webapp

Cela donnera la structure de base de la webapp.

0
cmb28