What TCCL is set when you are creating the client/client builder ? AFAIK
Resteasy will use the TCCL to look for providers in this case, so if it is
not set to your modules TCCL you may have problems.
Stuart
On Mon, 8 Jun 2015 at 19:41 Josh Kinlaw <jkinlaw(a)redhat.com> wrote:
Hi Wildfly,
I am running into what appears to be a module.xml issue. I am using
resteasy to post a multipart/form-data entity but am running into the
following exception at runtime:
12:56:34,869 ERROR [stderr] (Thread-91) javax.ws.rs.ProcessingException:
Unable to invoke request
12:56:34,869 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient4Engine.invoke(ApacheHttpClient4Engine.java:287)
12:56:34,870 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.invoke(ClientInvocation.java:407)
12:56:34,870 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.internal.ClientInvocationBuilder.post(ClientInvocationBuilder.java:195)
12:56:34,870 ERROR [stderr] (Thread-91) at
com.redhat.gss.redhat_support_lib.infrastructure.BaseQuery.upload(BaseQuery.java:169)
12:56:34,870 ERROR [stderr] (Thread-91) at
org.jboss.as.telemetry.extension.TelemetryService.sendJdr(TelemetryService.java:354)
12:56:34,870 ERROR [stderr] (Thread-91) at
org.jboss.as.telemetry.extension.TelemetryService.access$300(TelemetryService.java:34)
12:56:34,871 ERROR [stderr] (Thread-91) at
org.jboss.as.telemetry.extension.TelemetryService$1.run(TelemetryService.java:120)
12:56:34,871 ERROR [stderr] (Thread-91) Caused by: javax.ws.rs.ProcessingException:
could not find writer for content-type multipart/form-data type:
org.jboss.resteasy.plugins.providers.multipart.MultipartFormDataOutput
12:56:34,871 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.core.interception.ClientWriterInterceptorContext.throwWriterNotFoundException(ClientWriterInterceptorContext.java:40)
12:56:34,871 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.getWriter(AbstractWriterInterceptorContext.java:138)
12:56:34,871 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:117)
12:56:34,871 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.writeRequestBody(ClientInvocation.java:341)
12:56:34,872 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient4Engine.writeRequestBodyToOutputStream(ApacheHttpClient4Engine.java:558)
12:56:34,872 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient4Engine.buildEntity(ApacheHttpClient4Engine.java:524)
12:56:34,872 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient4Engine.loadHttpMethod(ApacheHttpClient4Engine.java:423)
12:56:34,872 ERROR [stderr] (Thread-91) at
org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient4Engine.invoke(ApacheHttpClient4Engine.java:281)
12:56:34,872 ERROR [stderr] (Thread-91) ... 6 more
I'm including resteasy-multipart-provider in my submodule's pom and
module.xml and if I run the unit tests for the submodule
(redhat-support-lib) everything passes. This leads me to believe it is an
issue with the module.xml of either resteasy-multipart-provider or
redhat-support-lib. Below are the module.xml's:
resteasy-multipart-provider:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3"
name="org.jboss.resteasy.resteasy-multipart-provider">
<resources>
<resource-root
path="resteasy-multipart-provider-3.0.11.Final.jar"/>
</resources>
<dependencies>
<module name="javax.xml.bind.api"/>
<module name="javax.api"/>
<module name="javax.enterprise.api"/>
<module name="javax.mail.api"/>
<module name="javax.servlet.api"/>
<module name="javax.ws.rs.api"/>
<module name="org.apache.james.mime4j"/>
<module name="org.jboss.resteasy.resteasy-jaxb-provider"/>
<module name="org.jboss.resteasy.resteasy-jaxrs"/>
<module name="org.jboss.resteasy.tjws"/>
</dependencies>
</module>
redhat-support-lib:
<module xmlns="urn:jboss:module:1.0"
name="com.redhat.gss.redhat-support-lib">
<resources>
<resource-root path="jboss-redhat-support-lib.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.ws.rs.api"/>
<module name="javax.net.ssl"/>
<module name="org.apache.commons.net"/>
<module name="org.apache.httpcomponents"/>
<module name="org.jboss.staxmapper"/>
<module name="org.jboss.as.controller"/>
<module name="org.jboss.as.server"/>
<module name="org.jboss.modules"/>
<module name="org.jboss.msc"/>
<module name="org.jboss.logging"/>
<module name="org.jboss.resteasy.resteasy-multipart-provider"
services="export" export="true"/>
<module name="org.jboss.resteasy.resteasy-jaxrs"/>
<module name="org.jboss.vfs"/>
</dependencies>
</module>
I'm a little stuck at this point. Does anyone have any ideas? My git repo
is at
https://github.com/Kinlaw/wildfly/tree/telemetry.
Josh Kinlaw
_______________________________________________
wildfly-dev mailing list
wildfly-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev