I want to test my OPC-UA-Client with a OPC-UA-Server. Therefore I want to create both, the server and the client locally, and let them communicate. Unfortunetly the implementation of our client requires the server to be behind a discovery server.
Explanation:
I created an ApplicationInstanceBase instance and loaded the default configuration. When I call the Start-Method I pass the server manager to it (this - I start the application from inside the server manager).
Code: Select all
public void Start()
{
// Create settings object and load default settings
mAppInstanceBase = new ApplicationInstanceBase();
mAppInstanceBase.LoadConfiguration(false, true);
// Load license from executing assembly (the file is embedded in this project)
ApplicationLicenseManager.AddProcessLicenses(Assembly.GetExecutingAssembly(), "License.lic");
mAppInstanceBase.Start(this, null, this);
}
Code: Select all
using (var tmpDiscovery = new Discovery())
{
var server = tmpDiscovery.FindServers(mUrl);
}
with the MessageSystem.MissingMethodException
I'm confused since my server has the DiscoveryServerUrl-Property set (opc.tcp//localhost:4840) but the client is unable to connect...Method not found: 'UnifiedAutomation.UaBase.DiscoveryClient UnifiedAutomation.UaBase.DiscoveryClient.Create(UnifiedAutomation.UaBase.ApplicationInstanceBase, UnifiedAutomation.UaBase.EndpointConfiguration, System.Uri, System.String, UnifiedAutomation.UaBase.ApplicationThreadPool)'.
I'd appreciate any type of hint or tips in general.
Thanks in advance,
Julian