cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Kulp (JIRA)" <>
Subject [jira] Resolved: (CXF-1807) Inconsistent Databinding relationship between ClientProxyBean/ServiceFactory
Date Wed, 11 Nov 2009 03:15:27 GMT


Daniel Kulp resolved CXF-1807.

       Resolution: Fixed
    Fix Version/s: 2.2.4
         Assignee: Daniel Kulp  (was: Benson Margulies)

This was fixed as part of the work of implementing the @Databinding annotation.   The applyExtraClass
stuff no longer even exists as it's been pushed up into the databinding stuff itself.

> Inconsistent Databinding relationship between ClientProxyBean/ServiceFactory
> ----------------------------------------------------------------------------
>                 Key: CXF-1807
>                 URL:
>             Project: CXF
>          Issue Type: Bug
>          Components: Simple Frontend
>    Affects Versions: 2.1.1, 2.1.2
>            Reporter: Bryan Stopp
>            Assignee: Daniel Kulp
>             Fix For: 2.2.4
> When creating a ClientProxyFactoryBean through the use of the spring defintion <simple:client>
the data-binding definition is not passed on to all appropriate associated objects in the
correct order. (NOTE: All line numbers references are based on v2.1.2 of the source code.
Notation is ClassName@line)
> The ClientProxyFactoryBean sets it's dataBinding onto the ClientFactoryBean @line 94.
This associates the dataBinding with the ClientFactoryBean (attribute dataBinding on parent
> However a request is made to execute the create() method on ClientFactoryBean (ClientProxyFactoryBean@97),
one of the first tasks is to execute applyExtraClass() (ClientFactoryBean@50). I believe this
assists in defining an inheritance model for the class tree. This method retrieves the dataBinding
from the _serviceFactory_ (ClientFactoryBean@78) and then proceeds to apply the extra classes
as per the property.
> However, at this time the ServiceFactory (attribute serviceFactory on parent AbstractWSDLBasedEndpointFactory)
has not been initialized. This doesn't occur the method createEndPoint() is invoked (ClientFactoryBean@52).
It isn't until the createEndPoint() method is invoke that a check is made against the ServiceFactory
to determine it's state. 
> Once it's identified that the service hasn't been initialized, initializeServiceFactory()
(AbstractWSDLBasedEndpointFactory@78) is invoked, which then associates the original dataBinding
defined at the ClientProxyFactoryBean definition with the ServiceFactory (AbstractWSDLBasedEndpointFactory@150).
> However, by this time, an invalid (ie: the default) dataBinding definition was used to
define the additional classes for the inheritance model.
> What brought this to my attention was: i was trying to utilize the AegisDataBinding to
map my class tree, however it wasn't being configured correctly. 
> -B

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message