Próbuję wywołać moje relaksującego usługi przy użyciu JAXRSClientFactory - i utknąłem z dostarczania konfiguracji do mapowania typów żądanie/odpowiedź (muszę serializacji listę)Składanie zwyczaj żądania marshallers do JAXRSClientFactory
Kod wygląda następująco :
JAXRSClientFactory.create("http://localhost:8080/", MyCoolService.class, "/path/to/client/config.xml");
config.xml wygląda następująco:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
xsi:schemaLocation="
http://cxf.apache.org/jaxrs
http://cxf.apache.org/schemas/jaxrs.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
">
<jaxrs:client id="testClient" createdFromAPI="true">
<jaxrs:providers>
<bean class="my.provider.Class"/>
</jaxrs:providers>
</jaxrs:client>
</beans>
teraz podczas debugowania kodu klienta, widzę, że w ciągu org.apache.cxf.jaxrs.provide r.ProviderFactory jest wywołanie
MessageBodyWriter<T> mw = chooseMessageWriter(messageWriters,
bodyType,
parameterType,
parameterAnnotations,
mediaType,
m);
jednak messageWriters nie zawiera mojego dostawcy. Co jest nie tak z moim kodem i jak poprawnie dostarczyć MessageBodyWriter? Z góry dziękuję!
Istnieje teraz metoda config.getHttpConduit(), która czyści ten kod odrobinę. –