View Single Post
  #1 (permalink)  
Old 04-24-2004
brian brian is offline
Registered User
 
Name: brian whitney
Organization: boulder research and development
Project: MarketBank
 
Join Date: Oct 2003
Posts: 119
NoEndpointException and dynamic loading using IcePack

We have been using IcePack successfully on Unix and Windows for a while now and we are really happy with it, indirect binding and on-demand activation are great features. We give icepackadmin an application file and then when we try to access the proxy of a service that has not yet been started, IcePack starts up the service automatically as you would expect.

However, we have recently noticed an issue with on-demand activation when we try to access the proxy for services contained in a large (~12 Meg) .so files or large jar files. We get a NoEndpointException when trying to do a checkedCast when trying to build the proxy for the first time:

Ice.NoEndpointException
proxy = "Demo_MarketBank -t @ Demo_MarketBank-Demo_MarketBank.Demo_MarketBank"
at IceInternal.Reference.getConnection(Reference.java :646)
at Ice._ObjectDelM.setup(_ObjectDelM.java:216)
at Ice.ObjectPrxHelper.__getDelegate(ObjectPrxHelper. java:657)
at Ice.ObjectPrxHelper.ice_isA(ObjectPrxHelper.java:4 6)
at Ice.ObjectPrxHelper.ice_isA(ObjectPrxHelper.java:3 4)
at icy.conductor.ConductorServantFacetPrxHelper.check edCast(ConductorServantFacetPrxHelper.java:213)
at icy.conductor.PlatformView.buildProxy(PlatformView .java:236)


After the client side receives this exception, THEN we see from a debug statement that our service gets started in our overriden IceBox::start method (perhaps because you thread out the starting of the service? )

If we then try to go through the same series of steps to build the proxy a second time, it works! We can access our servant and go to town.

Again, this does NOT happen when smaller files have to be dynamically loaded by IcePack. Not positive, of course, this loading thing is the issue, but only clue we could find.

Just in case, we took out any timeout specifications we had using "-t" and now use the Ice.Override.Timeout=-1 setting in our configuration file.

We can't send you our libraries so we were just wondering if this is something you could test on your end and see if, in fact, this is a bug.

Thoughts and/or suggestions welcome.

Thanks,

Brian
Reply With Quote