cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christian Schneider (JIRA)" <>
Subject [jira] [Closed] (DOSGI-59) Required service properties for autodiscovery using Zookeeper are automatically removed
Date Fri, 24 May 2013 14:34:36 GMT


Christian Schneider closed DOSGI-59.

> Required service properties for autodiscovery using Zookeeper are automatically removed

> ----------------------------------------------------------------------------------------
>                 Key: DOSGI-59
>                 URL:
>             Project: CXF Distributed OSGi
>          Issue Type: Bug
>          Components: Discovery
>    Affects Versions: 1.1
>            Reporter: Christian Marmolejo
>            Assignee: Christian Schneider
>             Fix For: 1.3.1
> Server side: service S exported under interface X (using DOSGi 1.1)
> Client side: Zookeeper configured and running properly + ServiceTracker for interface
X trying to consume remote service
> Problem: Local framework on client side doesn't create a proxy for remote service S
> Observations: 
> - When publishing service S on server side, method OsgiUtils.flattenServiceDescription(...)
invoked by CxfPublishHook.publishEndpoint(...) removes property Constants.EXPORTED_INTERFACES
in respective ServicePublication registration. This service is published in Zookeeper server.
> - Node created correctly in Zookeeper server with every original property but without
> - On client side, after starting Service Tracker, Zookeeper node is detected. In method
AbstractClientHook.processNotification(...) a property check code is executed:
> ServiceEndpointDescription sd = notification.getServiceEndpointDescription();
>         if ((sd.getProperty(Constants.EXPORTED_INTERFACES) == null) &&
>             (sd.getProperty(Constants.EXPORTED_INTERFACES_OLD) == null)) {
>             return;   //LINE ALWAYS REACHED
>         }
> just before invoking proxy creation code (AbstractClientHook.proxifyMatchingInterface(...)).
This code is never reached because the Endpoint description doesn't contain either property
Constants.EXPORTED_INTERFACES or Constants.EXPORTED_INTERFACES_OLD, that were removed automatically
on server side. The proxy for service S is never created on client side. If this check code
is removed, proxy is created properly.

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:

View raw message