cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benson Margulies (JIRA)" <>
Subject [jira] Commented: (CXF-1807) Inconsistent Databinding relationship between ClientProxyBean/ServiceFactory
Date Fri, 19 Sep 2008 18:00:44 GMT


Benson Margulies commented on CXF-1807:

At the risk of seeming to add insult to injury, could I persuade you to do a patch? It looks
like you have a good handle on this. I'll take care of applying it.

> 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
> 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