Feature #3326
implement the equivalent to the .NET Open Client
0%
Related issues
History
#1 Updated by Greg Shah over 6 years ago
The idea is to use the FWD Appserver support for which we have a Java client (#1608). It is similar in concept and function to the Java Open Client that Progress provides, but it is a different set of interfaces and classes. This Java-based FWD appserver client can be converted into a .NET Assembly using iKVM (https://www.ikvm.net/). We have already proven the idea because we use it to run our Java code as user-defined functions for SQLServer (#2143).
Both the appserver support and the RemoteObject
capability should be included. This will allow .NET applications to call into the FWD Appserver and invoke procedures/functions.
Interestingly, this same client could be used from OpenEdge 4GL code to call into the FWD appserver the same way. Since OpenEdge provides a mechanism to invoke .NET classes directly from 4GL syntax, a .NET based FWD Appserver client should work well.
#3 Updated by Greg Shah almost 2 years ago
In some recent work for a customer that wanted to try SQLServer (see #6274), Ovidiu found that the iKVM project is not being actively developed or at least the original web sites are offline. The code last used successfully is available at https://proj.goldencode.com/downloads/ikvm/ikvmbin-8.1.5717.0.zip and some details are logged in Obtaining the 3rd Party Code.
We need to check if the project is alive. If not, we should not rely upon it for this .NET Open Client replacement. As a fallback approach, we would need to write a from-scratch .NET implementation of our existing Java Open Client replacement code. This would need to be binary compatible with the protocol used for RemoteObject
which means we will have to very carefully consider the serialization implications.
#4 Updated by Greg Shah almost 2 years ago
- Related to Support #6489: port tests of the Open Java Client to the Open .NET Client added