Good morning everyone!

I’m facing an issue when deploying an application which uses the jClouds/Abiquo libraries (my project depends on org.apache.jclouds.labs:abiquo:1.7.0), and I hope some of you have found and solved this problem.

When I started developing my project I noticed that the RESTEasy services provided by jBoss conflicted with the Wink libraries used by jClouds/Abiquo and the server failed to deploy the application. Right then, I decided to disable the REST extensions provided by jBoss by commenting out some lines in the standalone.xml configuration file of the server, like this:

 

<extensions>

<!-- extension module="org.jboss.as.jaxrs"/ -->

</extensions>

 

<profile>

<!-- subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/ -->

</profile>

Everything worked ok until I needed to re-enable these extensions to allow a new module to use them. And then , the deployment problem reappeared:

 

10:35:33,193 INFO  [org.jboss.weld.deployer] (MSC service thread 1-5) JBAS016002: Processing weld deployment IaasGateway-ear-1.0.0-SNAPSHOT.ear

10:35:33,421 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-5) MSC000001: Failed to start service jboss.deployment.unit."IaasGateway-ear-1.0.0-SNAPSHOT.ear".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."IaasGateway-ear-1.0.0-SNAPSHOT.ear".POST_MODULE: JBAS018733: Failed to process phase POST_MODULE of deployment "IaasGateway-ear-1.0.0-SNAPSHOT.ear"

       at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:127) [jboss-as-server-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]

       at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]

       at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]

       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]

       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]

       at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]

Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011232: Only one JAX-RS Application Class allowed.  org.apache.wink.common.internal.application.SimpleWinkApplication org.apache.wink.common.WinkApplication org.apache.wink.common.internal.model.ModelUtils$1

       at org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.scan(JaxrsScanningProcessor.java:206)

       at org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.deploy(JaxrsScanningProcessor.java:100)

       at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:120) [jboss-as-server-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]

       ... 5 more

I’ve tried excluding the Wink dependencies from my project to be able to deploy it, but then the application fails when some of the Wink classes is referenced since they cannot be found.

Any idea will be welcome; thank you so much in advance!