Archived

This forum has been archived. Please start a new discussion on GitHub.

IceGrid + Silverlight exception Ice.NoEndpointException

I use "simple" C# demo project for IceGrid. Client works with demo.

Next i try to communicate with DemoIceGrid from silverlight application (Ice.Default.Location is defined at global.asax) but always have an exception: IceNoEndpontException (on the server side I guess - ie - icebridge do not know about Ice.Default.Location).

If I call GridServer with exact endpoint (you can see it in IceGridAdmin) all works fine:
_hello = Demo.HelloPrxHelper.checkedCast(_comm.stringToProxy("hello:tcp -h 172.16.129.214 -p 12224"));
_hello.sayHello();

What can be the problem?
Thanks.

Ice v3.3.1.0
MS Visual Studio 2008 web server
Silverlight 3.0 (I think no matter)

Comments

  • benoit
    benoit Rennes, France
    Hi,

    Yes, if your Silverlight client requests go through the bridge, you should only have to set the Ice.Default.Locator property in the bridge configuration (in Global.asax).

    Where do you see the Ice.NoEndpointException raised? Is it raised by the client or by the bridged (if it's raised by the bridge, the client should receive it as an Ice::UnknownLocalExcpeption)?

    Is the locator running on the same machine as the bridge? You could try adding some tracing on the bridge to try to see if the bridge receives the request and figure out why the endpoint resolution fails. You can set Ice.Trace.Network=2, Ice.Trace.Protocol=2 and Ice.Trace.Locator=2 in the bridge configuration for example.

    Cheers,
    Benoit.
  • Hi Benoit!

    The Locator (you mean SimpleServer?) and client is on the same local computer.
    The exception is raised on server side somewhere at bridge (from silverlight.js line 54: throw new Error(errMsg);). So I see at output something like this:
    A first chance exception of type 'Ice.UnknownLocalException' occurred in IceSL
    A first chance exception of type 'IceInternal.LocalExceptionWrapper' occurred in IceSL
    A first chance exception of type 'Ice.NoEndpointException' occurred in Ice.dll
    

    and Visual Studio JustInTime Debugger appears.

    Where i can see trace messages from bridge?
  • benoit
    benoit Rennes, France
    Hi,

    If you run the bridge from Visual Studio, I believe you should see the tracing in the console. I believe your problem comes from the configuration of the Ice communicator in the bridge, the following code in Global.asax:
        Application["com"] = Ice.Util.initialize();
    

    should be changed to:
        Application["com"] = Ice.Util.initialize(initData);
    

    Let us know if this still doesn't work after this change.

    Cheers,
    Benoit.
  • Hi,

    Great! That works! Thanks!

    BTW
    The line:
    Application["com"] = Ice.Util.initialize();
    
    is from your silverlight demo project "hello" ;)