Apache Maven
Maven Tomcat Plugin
Ricerca…
Avvia Tomcat usando il plugin Maven.
Nell'esempio inizieremo tomcat 7 usando il plugin maven, facoltativamente aggiungendo la protezione utente / password per il punto finale REST. Aggiunta anche funzionalità di costruzione di guerra.
Aggiungi sotto la sezione nella sezione plugin di pom per tomcat
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://localhost:8090/manager</url>
<server>localhost</server>
<port>8191</port>
<path>/${project.build.finalName}</path>
<tomcatUsers>src/main/tomcatconf/tomcat-users.xml</tomcatUsers>
</configuration>
</plugin>
Assicurati che il plugin maven war sia aggiunto e web.xml sia presente nella posizione /src/main/webapp/WEB-INF/web.xml. Di seguito è riportato un esempio di plugin war.
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<webResources>
<resource>
<!-- this is relative to the pom.xml directory -->
<directory>/src/main/webapp/WEB-INF/web.xml</directory>
</resource>
</webResources>
</configuration>
</plugin>
Facoltativamente, aggiungi tomcat-users.xml alla posizione src / main / tomcatconf. Sarà copiato automaticamente all'avvio di tomcat.
<tomcat-users>
<user name="user" password="password" roles="admin" />
</tomcat-users>
Facoltativamente, aggiungi la voce in basso in web.xml per proteggere l'URL REST.
<!-- tomcat user -->
<security-constraint>
<web-resource-collection>
<web-resource-name>Wildcard means whole app requires authentication</web-resource-name>
<url-pattern>/helloworld/*</url-pattern>
<http-method>GET</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
Crea una nuova build di maven da eclipse. Seleziona il progetto di guerra e nella sezione Obiettivi aggiungi il comando di seguito.
tomcat7:run
vedrai il messaggio
[INFO] --- tomcat7-maven-plugin: 2.2: run (default-cli) @ web-service-ldap2 --- [INFO] Esecuzione di guerra su http: // localhost: 8191 /