9:47, EET
March 15, 2018
Hello,
I want to use the Client to connect to a Node OPC UA Server.
https://github.com/node-opcua/node-opcua-sampleserver
It’s no problem with the UaExpert and the OPC-Commander from Node OPC UA.
But the OPC UA Client can’t connect to the server.
I connect to opc.tcp//i40-VirtualBox:26543 — urn:NodeOPCUA-Server-default.
There’s a loop after clicking on “connect to server”: I have to select the server and then the Security Settings but after this I should select again the server and so on…
The only response I get is a timeout notification in the server log.
Thank you!
13:18, EET
April 17, 2013
Hello,
Thank you for reporting this error. We can reproduce this also ourselves.
The error happens because the server sends different EndpointDescriptions in GetEndpointsResponse and CreateSessionResponse.
In GetEndpoints, the returned EndpointDescriptions contain TransportProfileUri=http://opcfoundation.org/UA-Profile/Transport/uatcp-uasc-uabinary. In CreateSessionResponse, the corresponding TransportProfileUri is empty.
In principle, the server application is not working according to specification. The part 4 of the OPC UA specification states that “The Server shall return a set of EndpointDescriptions available for the serverUri specified in the request. … The Client shall verify this list with the list from a DiscoveryEndpoint if it used a DiscoveryEndpoint to fetch the EndpointDescriptions. It is recommended that Servers only include the server.applicationUri, endpointUrl, securityMode, securityPolicyUri, userIdentityTokens, transportProfileUri and securityLevel with all other parameters set to null. Only the recommended parameters shall be verified by the client.”
This being said, the Prosys OPC UA Client could handle this error situation more robustly. For example, the client application should show an indication of the error and give an option to acknowledge the error and continue. We’ll improve this feature of the Client application in the future.
Unfortunately, there’s no workaround available for now. The Prosys OPC UA Client cannot connect to this server until the server is changed so that it returns the same EndpointDescriptions in GetEndpoints and CreateSession.
If you would be using the Prosys OPC UA Java SDK directly, you could bypass this validation check with method
However, as said this is not possible at the moment with the graphical Prosys OPC UA Client application.
Please let us know if there’s any additional questions or comments about this matter.
17:12, EET
March 15, 2018
Hi Heikki,
thank you for your support!
Etienne from Node OPC UA fixed the bug:
https://github.com/node-opcua/node-opcua/issues/464
Most Users Ever Online: 1919
Currently Online:
44 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 144
rocket science: 88
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 734
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1523
Posts: 6449
Newest Members:
christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettinger, howardkennerley, Thomassnism, biancacraft16, edgardo3518Moderators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0
Administrators: admin: 1