Use bibliotecas CXF na implementação do Wildfly com o artefato Maven fornecido
Estou tentando implantar um projeto que contém uma interface JAX-WS em um servidor 8.2 do wildfly. O projeto é embalado como uma guerra. Nesse projeto, eu gostaria de usar interceptores.
import org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor;
public class ReplyToHeaderInInterceptor extends AbstractSoapInterceptor { /*code*/}
Estou usando o Maven com a tag "fornecida" para não receber o seguinte erro:
Apache CXF library (cxf-rt-bindings-soap-3.1.1.jar) detected in ws endpoint deployment; either provide a proper deployment replacing embedded libraries with container module dependencies or disable the webservices subsystem for the current deployment adding a proper jboss-deployment-structure.xml descriptor to it. The former approach is recommended, as the latter approach causes most of the webservices Java EE and any JBossWS specific functionality to be disabled.
É assim:
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>3.1.1</version>
<scope>provided</scope>
</dependency>
Mas se eu fizer isso, a biblioteca não poderá ser encontrada em tempo de execução:
Caused by: java.lang.NoClassDefFoundError: org/apache/cxf/binding/soap/interceptor/AbstractSoapInterceptor
Eu já tentei adicionar a dependência através do arquivo MANIFEST.MF usando o maven:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.5</version>
<configuration>
<packagingExcludes>WEB-INF/web.xml</packagingExcludes>
<warName>backend</warName>
<archive>
<manifestEntries>
<Dependencies>org.apache.cxf</Dependencies>
</manifestEntries>
</archive>
</configuration>
</plugin>
Não sei o que fazer, alguma sugestão?