I am not sure whether the questions I have added make sense or not? 
but looking forward to your response.
 
Thanks again for aptiently answering my queries...
 
Regards
Roshan
--- On *Mon, 5/25/09, ecf-dev-request@xxxxxxxxxxx 
/<ecf-dev-request@xxxxxxxxxxx>/* wrote:
    Hi Roshan,
    Thanks for helping with the testing of the activemq provider. I'm
    going to step through your log and identify where/how it's
    diverging from mine for the
    ActiveMQServiceRegisterTest.testGetProxy (I think all the test
    cases are seeing the same thing, so focusing on this one is
    reasonable).
    First, the exception that starts with
    [log;+0530 2009.05.21
    20:41:23:469;ERROR;org.eclipse.ecf;org.eclipse.core.runtime.Status[plugin=org.eclipse.ecf;code=4;message=getSupportedIntents;severity4;exception=java.lang.ArrayStoreException;children=[]]]
    java.lang.ArrayStoreException
    at java.lang.System.arraycopy(Native Method)
    at java.util.Arrays.copyOf(Unknown Source)
    at java.util.ArrayList.toArray(Unknown Source)
    at
    org.eclipse.ecf.internal.provider.jms.activemq.ActiveMQJMSServerContainerInstantiator.getSupportedIntents(ActiveMQJMSServerContainerInstantiator.java:71)
    ...
    Was a small bug in the getSupportedIntents implementation. It's
    now fixed and released to HEAD. So you shouldn't see it again.
    This warning:
    WARNING: path isn't a valid local location for TcpTransport to use
    java.lang.NumberFormatException: For input string: "/exampleTopic"
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at
    org.apache.activemq.transport.tcp.TcpTransportFactory.createTransport(TcpTransportFactory.java:125)
    ...
    I've reported to ActiveMQ with this bug:
    https://issues.apache.org/activemq/browse/AMQ-2256
    It's not fatal, however, as the NumberFormatException is simply
    caught and logged as a warning within ActiveMQ. Until ActiveMQ
    fixes it I think we're just going to have to live with it.
    Now, we get to the main difference.  You have this output:
    hostRegistered
    serviceReference={org.eclipse.ecf.tests.osgi.services.distribution.TestServiceInterface1}={osgi.remote.interfaces=[*],
    foo=bar, ecf.rsvc.cid=JMSID[tcp://localhost:61616/exampleTopic],
    service.id=120}
    remoteServiceContainer=RemoteServiceContainer
    [containerID=JMSID[tcp://localhost:61616/exampleTopic],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSServerContainer@1ce08c7,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@27de24]
    remoteRegistration=RemoteServiceRegistrationImpl[remoteServiceID=org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=JMSID[tcp://localhost:61616/exampleTopic];containerRelativeID=0];containerID=JMSID[tcp://localhost:61616/exampleTopic];serviceid=0;serviceranking=0;classes=[org.eclipse.ecf.tests.osgi.services.distribution.TestServiceInterface1];state=0;properties={ecf.rsvc.id=0,
    foo=bar}]
    <scott> This indicates that the remote service was registered with
    the ActiveMQJMSServerContainer. This is fine/looks correct.
    proxyRetrievingRemoteServiceReferences
    endpointDescription=ServiceEndpointDescriptionImpl[;providedinterfaces=[org.eclipse.ecf.tests.osgi.services.distribution.TestServiceInterface1];location=null;serviceid=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=osgiservices://192.168.2.100:61616;full=_osgiservices._tcp.default._iana@osgiservices://192.168.2.100:61616];osgiEndpointID=null;ecfEndpointID=JMSID[jms:tcp://localhost:61616/exampleTopic];ecfTargetID=null;ecfFilter=null;props={ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
    osgi.remote.service.interfaces=org.eclipse.ecf.tests.osgi.services.distribution.TestServiceInterface1,
    ecf.sp.cns=ecf.namespace.jmsid, ecf.rsvc.id=0,
    ecf.sp.cid=[B@6946d2, foo=bar}]
    remoteServiceContainer=RemoteServiceContainer
    [containerID=GUID[9Q0rlDD3OfhdZFTi0KGHbQZ7rX4=],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSClientContainer@1a3a52c,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@a65760]
    <scott>this indicates that you have received a discovery
    notification (good), and that the proxy lookup has begun. But at
    this point you then get the failure...as indicated by the TRACE
    and the log entry:
    (TRACE)[05/21/09;20:41:37:545]TRACING
    org.eclipse.ecf.internal.osgi.services.distribution.DiscoveredServiceTrackerImpl#handleDiscoveredServiceAvailable(getRemoteServiceReferences
    result is empty. containerHelper=RemoteServiceContainer
    [containerID=GUID[9Q0rlDD3OfhdZFTi0KGHbQZ7rX4=],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSClientContainer@1a3a52c,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@a65760]remoteReferences=null)
    [log;+0530 2009.05.21
    20:41:37:545;ERROR;org.eclipse.ecf.osgi.services.distribution;org.eclipse.core.runtime.Status[plugin=org.eclipse.ecf.osgi.services.distribution;code=4;message=org.eclipse.ecf.internal.osgi.services.distribution.DiscoveredServiceTrackerImpl:handleDiscoveredServiceAvailable:getRemoteServiceReferences
    result is empty. containerHelper=RemoteServiceContainer
    [containerID=GUID[9Q0rlDD3OfhdZFTi0KGHbQZ7rX4=],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSClientContainer@1a3a52c,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@a65760]remoteReferences=null;severity4;exception=null;children=[]]]
    <scott> the crucial information here is that
    remoteReferences=null...that is, the lookup via
    getRemoteServicesReference did not find an remote references. This
    is puzzeling as here is the output from my own local runs:
    hostRegistered
    serviceReference={org.eclipse.ecf.tests.remoteservice.IConcatService}={osgi.remote.interfaces=[*],
    ecf.rsvc.cid=JMSID[tcp://localhost:61616/exampleTopic],
    service.id=128}
    remoteServiceContainer=RemoteServiceContainer
    [containerID=JMSID[tcp://localhost:61616/exampleTopic],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSServerContainer@143b93b,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@1d3e3f3]
    remoteRegistration=RemoteServiceRegistrationImpl[remoteServiceID=org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=JMSID[tcp://localhost:61616/exampleTopic];containerRelativeID=0];containerID=JMSID[tcp://localhost:61616/exampleTopic];serviceid=0;serviceranking=0;classes=[org.eclipse.ecf.tests.remoteservice.IConcatService];state=0;properties={ecf.rsvc.id=0}]
    <scott> indicates service
     registered
    proxyRetrievingRemoteServiceReferences
    endpointDescription=ServiceEndpointDescriptionImpl[;providedinterfaces=[org.eclipse.ecf.tests.remoteservice.IConcatService];location=null;serviceid=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=osgiservices://192.168.1.101:61616;full=_osgiservices._tcp.default._iana@osgiservices://192.168.1.101:61616];osgiEndpointID=null;ecfEndpointID=JMSID[tcp://localhost:61616/exampleTopic];ecfTargetID=null;ecfFilter=null;props={ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
    osgi.remote.service.interfaces=org.eclipse.ecf.tests.remoteservice.IConcatService,
    ecf.sp.cns=ecf.namespace.jmsid, ecf.rsvc.id=[B@d63b5b,
    ecf.sp.cid=[B@d300ed}]
    remoteServiceContainer=RemoteServiceContainer
    [containerID=GUID[4yl/AwIGzkdF0+OHUOuPeYwkGrU=],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSClientContainer@6a5afc,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@5f39b0]
    <scott> indicates remote service discovered, and proxy is being looked up
    proxyRegistering
    endpointDescription=ServiceEndpointDescriptionImpl[;providedinterfaces=[org.eclipse.ecf.tests.remoteservice.IConcatService];location=null;serviceid=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=osgiservices://192.168.1.101:61616;full=_osgiservices._tcp.default._iana@osgiservices://192.168.1.101:61616];osgiEndpointID=null;ecfEndpointID=JMSID[tcp://localhost:61616/exampleTopic];ecfTargetID=null;ecfFilter=null;props={ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
    osgi.remote.service.interfaces=org.eclipse.ecf.tests.remoteservice.IConcatService,
    ecf.sp.cns=ecf.namespace.jmsid, ecf.rsvc.id=[B@d63b5b,
    ecf.sp.cid=[B@d300ed}]
    remoteServiceContainer=RemoteServiceContainer
    [containerID=GUID[4yl/AwIGzkdF0+OHUOuPeYwkGrU=],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSClientContainer@6a5afc,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@5f39b0]
    remoteServiceReference=RemoteServiceReferenceImpl[class=org.eclipse.ecf.tests.remoteservice.IConcatService;registration=RemoteServiceRegistrationImpl[remoteServiceID=org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=JMSID[tcp://localhost:61616/exampleTopic];containerRelativeID=0];containerID=JMSID[tcp://localhost:61616/exampleTopic];serviceid=0;serviceranking=0;classes=[org.eclipse.ecf.tests.remoteservice.IConcatService];state=0;properties={ecf.rsvc.id=0}]]
    <scott> indicates remote reference *was* successfully retrieved
    and that the proxy is being registered locally
    proxyRegistered
    endpointDescription=ServiceEndpointDescriptionImpl[;providedinterfaces=[org.eclipse.ecf.tests.remoteservice.IConcatService];location=null;serviceid=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=osgiservices://192.168.1.101:61616;full=_osgiservices._tcp.default._iana@osgiservices://192.168.1.101:61616];osgiEndpointID=null;ecfEndpointID=JMSID[tcp://localhost:61616/exampleTopic];ecfTargetID=null;ecfFilter=null;props={ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
    osgi.remote.service.interfaces=org.eclipse.ecf.tests.remoteservice.IConcatService,
    ecf.sp.cns=ecf.namespace.jmsid, ecf.rsvc.id=[B@d63b5b,
    ecf.sp.cid=[B@d300ed}]
    remoteServiceContainer=RemoteServiceContainer
    [containerID=GUID[4yl/AwIGzkdF0+OHUOuPeYwkGrU=],
    container=org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSClientContainer@6a5afc,
    containerAdapter=org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject@5f39b0]
    remoteServiceReference=RemoteServiceReferenceImpl[class=org.eclipse.ecf.tests.remoteservice.IConcatService;registration=RemoteServiceRegistrationImpl[remoteServiceID=org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=JMSID[tcp://localhost:61616/exampleTopic];containerRelativeID=0];containerID=JMSID[tcp://localhost:61616/exampleTopic];serviceid=0;serviceranking=0;classes=[org.eclipse.ecf.tests.remoteservice.IConcatService];state=0;properties={ecf.rsvc.id=0}]]
    proxyServiceRegistration={org.eclipse.ecf.tests.remoteservice.IConcatService}={osgi.remote=org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceImpl@433359,
    service.id=130}
    <scott> indicates that the remote reference was used to create
    proxy and registered in local service registry.
    Obviously this is different from what you are seeing...mine is
    finding the remote service reference, using it to create the proxy
    and registering the proxy. The only important difference in your
    output for hostRegistered and
    proxyRetrievingRemoteServiceReferences is the presence of the
    service property: 'foo=bar' in yours. Are you using the latest
    versions of all the test classes/plugins? I don't believe this
    should actually make a difference for this problem...but I suppose
    it's possible that this is triggering some bug in our code. So I
    think the next step is to do these things:
    1) Remove the 'foo=bar' property, update all code to latest and
    rerun test.
    2) turn on tracing in this bundle:
    org.eclipse.ecf.provider.remoteservice and rerun this test:
    ActiveMQServiceRegisterTest
    3) run this junit plugin test also:
    org.eclipse.ecf.tests.provider.jms.activemq.remoteservice.ActiveMQRemoteServiceTest
    and see if it produces similar failures. Hopefully it will, but
    either way it will be informative.
    Thanksinadvance,
    Scott
------------------------------------------------------------------------
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev