I am running into stability issues with a RO DA TCP server.
The service appears to work perfectly from localhost but when connecting from another LAN machine the indy TCP component does not return any data.
Typically my first call is a getRODLLibrary which will execute
IndyClient.Connect in TROCustomIndyTCPChannel.IntDispatch
but then the request of size 4
IndyClient.IOHandler.Write(aRequest, aRequest.Size, True);
will result in
IndyClient.IOHandler.ReadStream(aResponse);
throwing an exception.
My RO TCP server is written in .NET
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
ApplicationServer server = new ApplicationServer(“OffNetServer”);
var schemaLoader = new SchemaLoader("genericdb.daSchema");
var container = new SimpleContainer();
container.RegisterSDK(server.NetworkServer);
container.RegisterDataAbstract();
container.RegisterSingleton<ISchemaLoader>(schemaLoader);
container.RegisterSingleton<ISchemaProvider, SchemaProvider>();
container.RegisterServices();
server.DependencyResolver = container;
server.NetworkServer.ServerChannel = new RemObjects.SDK.Server.IpTcpServerChannel();
server.NetworkServer.Port = 7789;
int maxMesSize = int.MaxValue;
BinMessage message = new BinMessage();
message.MaxMessageSize = maxMesSize;
message.MaxDecompressedMessageSize = maxMesSize;
server.NetworkServer.RegisterServerMessage(message);
server.Run(args);
My client is in delphi
and connects using
Self.ClientChannel.TargetUrl := ‘tcp://:7789/bin’;
I don’t think the issue is related to my client code however since I can reproduce the issue in the Visual Studio UI.
When I perform ‘Update Interface File(s)’ of the remoteRODL file I sometimes get an error (first time?)
This is the Visual Studio Output:
Cannot read RODL library from source tcp://localhost:7789/bin. Cannot load RODL from provided server Uri. Too few bytes read from stream (29116 expected but 0 read)
Updated OffNetServer_Intf.cs
Updated OffNetServer_Intf.cs
Updated OffNetServer_Intf.cs
Updated OffNetServer_Intf.cs
Cannot read RODL library from source tcp://w8pro64:7789/bin. Cannot load RODL from provided server Uri. Too few bytes read from stream (29116 expected but 24576 read)
Cannot read RODL library from source tcp://w8pro64:7789/bin. Cannot load RODL from provided server Uri. Too few bytes read from stream (29116 expected but 24576 read)
Cannot read RODL library from source tcp://w8pro64:7789/bin. Cannot load RODL from provided server Uri. Too few bytes read from stream (29116 expected but 28672 read)
Cannot read RODL library from source tcp://w8pro64:7789/bin. Cannot load RODL from provided server Uri. Too few bytes read from stream (29116 expected but 12288 read)
I am using delphi version 10.0.0.1537 and .NET version 10.0.0.1521
Any idea what the issue could be? How this can be debugged?