[Tomcat] [Maven] Maven plugin para deploy no Tomcat 9

TOMCAT-SERVER

Normalmente para realizar o deploy de uma aplicação no Tomcat, temos que entrar em seu painel e realizar o upload manualmente do arquivo .war, esse processo é um pouco custoso e nem sempre temos acesso a esse painel em um ambiente de produção, para isso a própria Apache desenvolveu um plugin para automatizar o processo de deploy.

O plugin que vou apresentar agora é do Tomcat 7 porém consegui utiliza-lo normalmente com o Tomcat 9.

Configurando o Plugin

Segue a configuração do plugin tomcat7-maven-plugin:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
    <configuration>
        <url>http://localhost:8080/manager/text</url>
        <server>TomcatServer</server>
        <path>/${project.artifactId}</path>
    </configuration>
</plugin>

A configuração do plugin é bem simples, porém cabe algumas resalvas a serem esclarecidas, note que temos as seguintes configurações para o plugin: Continue reading

Java EE – Problemas com deploy de aplicações no Glassfish 5 (Web Service deployment into Glassfish error)

glassfish

Servlet [ParticipantPortTypePortImpl] and Servlet [CoordinatorPortTypePortImpl] have the same url pattern: [/WSAT10Service]. Related annotation information: annotation [@javax.jws.WebService(wsdlLocation=/wsdls/wsat10/wsat.wsdl, name=, portName=CoordinatorPortTypePort, endpointInterface=com.sun.xml.ws.tx.at.v10.types.CoordinatorPortType, serviceName=WSAT10Service, targetNamespace=http://schemas.xmlsoap.org/ws/2004/10/wsat)] on annotated element [class com.sun.xml.ws.tx.at.v10.endpoint.CoordinatorPortTypePortImpl] of type [TYPE]

Esse erro ocorre pois em suas dependências no projeto há algo em conflito com o Glassfish, normalmente bibliotecas do próprio glassfish, basta remove-las e utilizar somente bibliotecas referente ao WebService. Exemplo:

<dependencies>
<!--      
       Não utilizar essa dependência! 
        <dependency>
            <groupId>org.glassfish.metro</groupId>
            <artifactId>webservices-rt</artifactId>
            <version>2.3</version>
            <scope>compile</scope>
        </dependency>
-->
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>7.0</version>
            <scope>provided</scope>
        </dependency>
   
</dependencies>