Thank you for your reply.
The client is still unable to connect to the Glacier2 router.
I updated the demo in "Ice-3.4.1-demos\democs\IceGrid\icebox" as per your instructions.
Now, if I alter "config.client" to connect through the Glacier2 firewall, I get the following error:
Code:
!! 3/13/2011 17:41:36:779 client.exe: error: Ice.ConnectionLostException
error = 0
at IceInternal.ProxyFactory.checkRetryAfterException(LocalException ex, Reference ref, Boolean sleep, Int32& cnt) in c:\Ice-Build\VC9\Rele
roxyFactory.cs:line 212
at Ice.ObjectPrxHelperBase.handleException__(ObjectDel_ delegate, LocalException ex, Boolean sleep, Int32& cnt) in c:\Ice-Build\VC9\Releas
xy.cs:line 2340
at Demo.HelloPrxHelper.sayHello(Dictionary`2 context__, Boolean explicitContext__) in C:\Program Files (x86)\ZeroC\Ice-3.4.1\Ice-3.4.1-dem
d\icebox\Hello.cs:line 180
at Demo.HelloPrxHelper.sayHello() in C:\Program Files (x86)\ZeroC\Ice-3.4.1\Ice-3.4.1-demos\democs\IceGrid\icebox\Hello.cs:line 149
at Client.App.run(String[] args) in C:\Program Files (x86)\ZeroC\Ice-3.4.1\Ice-3.4.1-demos\democs\IceGrid\icebox\Client.cs:line 39
at Ice.Application.doMain(String[] args, InitializationData initializationData) in c:\Ice-Build\VC9\Release\cs\src\Ice\Application.cs:line
Caused by: System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
at System.Net.Sockets.Socket.EndReceive(IAsyncResult asyncResult)
at IceInternal.TcpTransceiver.finishRead(Buffer buf) in c:\Ice-Build\VC9\Release\cs\src\Ice\TcpTransceiver.cs:line 296
Here is the original version of "config.client" that works 100% (its not connecting through the Glacier2 firewall):
Code:
Hello.Proxy=hello
Ice.Default.Locator=DemoIceGrid/Locator:default -h 127.0.0.1 -p 4061
Here is the new version of "config.client" that throws the exception above (since Glacier2 is on port 4063, I assume that changing the port to 4063 should make it connect through Glacier2):
Code:
Hello.Proxy=hello
Ice.Default.Locator=DemoIceGrid/Locator:default -h 127.0.0.1 -p 4063
Notes: Glacier2 is definitely running within IceGrid, as I changed the "activation" property to "always" (it was on "manual" which means that the Glacier2 router does not even run by default).