[ 
https://issues.apache.org/jira/browse/CXF-4747?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13635127#comment-13635127
 ] 

Sergey Beryozkin commented on CXF-4747:
---------------------------------------

I wonder if using org.apache.cxf.bus.spring.SpringBusFactory initialized with 
ApplicationContext is what you need, or may be one of BusFactory can do it too, 
should be possible... I may need to ask Dan for some advice on how to get an 
existing bus reused for WebClient. 

I see that when WebClient is created from the code and invoked in context of 
the server invocation it will use the thread default bus (by default), so I'm 
assuming that this will be the existing bus.  

"What I would like is to be able to use a WebClient just like I can use a 
jaxrs:client, including the http conduit. So I would like to have 1 Spring 
config file, with my client definition as well as my http conduit."

I'm still not following on what do you mean under a 'client definition'. Do you 
mean that we introduce something like "jaxrs:webclient" instead of using the 
more involved Spring configuration involving the factory bean, etc?
 

                
> Support easier configuration of Spring bus with WebClient
> ---------------------------------------------------------
>
>                 Key: CXF-4747
>                 URL: https://issues.apache.org/jira/browse/CXF-4747
>             Project: CXF
>          Issue Type: Improvement
>          Components: JAX-RS
>    Affects Versions: 2.7.1
>            Reporter: Mike Noordermeer
>            Priority: Minor
>
> The current {{WebClient.create()}} methods only support either using a fresh 
> bus, or creating a new bus from a Spring config file. It should be possible 
> to reuse an existing Spring bus, so you can for instance enter your 
> {{<http:conduit>}} elements in your usual Spring config.
> The same issue was asked before on the [mailing 
> list|http://mail-archives.apache.org/mod_mbox/cxf-users/201001.mbox/%3cd9d39d1e52c5514c94de9b5e928c72db032bc...@mail02.bedford.progress.com%3E],
>  but without an answer.
> I have found a workaround, but I don't find it too pretty:
> {code:xml}
>     <http:conduit name="*.http-conduit">
>         <http:client ConnectionTimeout="3000000" ReceiveTimeout="3000000" />
>         <http:tlsClientParameters>
>             <sec:keyManagers keyPassword="pass">
>                 <sec:keyStore resource="mykeystore.jks" password="pass" 
> type="JKS" />
>             </sec:keyManagers>
>         </http:tlsClientParameters>
>     </http:conduit>
>     <bean id="myWebClientFactory" 
> class="org.apache.cxf.jaxrs.spring.JAXRSClientFactoryBeanDefinitionParser.JAXRSSpringClientFactoryBean">
>         <property name="address" value="${myurl}" />
>         <property name="providers">
>             <list>
>                 <bean 
> class="org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider" />
>             </list>
>         </property>
>     </bean>
>     <bean id="myWebClient" factory-bean="myWebClientFactory" 
> factory-method="createWebClient" />
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to