You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2011/09/14 03:58:09 UTC

[jira] [Resolved] (CXF-2758) org.apache.cxf.frontend.ClientFactoryBean optimization

     [ https://issues.apache.org/jira/browse/CXF-2758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Kulp resolved CXF-2758.
------------------------------

       Resolution: Won't Fix
    Fix Version/s: Invalid

This improvement request has been open for over a year and no-one has stepped up to implement it. As such, it does not seems to be a priority for the existing CXF community. If, in the future, someone would like to tackle this, feel free to open is and attach a patch.


> org.apache.cxf.frontend.ClientFactoryBean optimization
> ------------------------------------------------------
>
>                 Key: CXF-2758
>                 URL: https://issues.apache.org/jira/browse/CXF-2758
>             Project: CXF
>          Issue Type: Improvement
>          Components: JAX-WS Runtime
>    Affects Versions: 2.3
>            Reporter: Rolf Thunbo
>            Priority: Minor
>             Fix For: Invalid
>
>
> In the create method both the endpoint and client is created each time it is called. Is it really neccessary to build the endpoint each time, wouldn't it be good enough to just create a new client based on the endpoint? Doing so greatly improves the performance of the client factory on subsequent calls to the create method.
> I propose the existing code be replaced by the following code:
> 	public Client create() {
> 		if (ep == null) {
> 			getServiceFactory().reset();
> 			if (getServiceFactory().getProperties() == null) {
> 				getServiceFactory().setProperties(properties);
> 			} else if (properties != null) {
> 				getServiceFactory().getProperties().putAll(properties);
> 			}
> 			try {
> 				ep = createEndpoint();
> 				applyProperties(ep);
> 				initializeAnnotationInterceptors(ep, getServiceClass());
> 			} catch (EndpointException e) {
> 				throw new ServiceConstructionException(e);
> 			} catch (BusException e) {
> 				throw new ServiceConstructionException(e);
> 			}
> 		}
> 		Client client = null;
> 		client = createClient(ep);
> 		applyFeatures(client);
> 		return client;
> 	}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira