Hello,
If BaseNodemanager.Call on the server side has executed a method (with outputargments) and it returns to the client with Statuscodes.Bad, the client does not receive any outputargments. If the server returns with Statuscodes.Good the client does receive the outputarguments. Is this behaviour normal ?
Kind regards
Nico
Call returns no outputarguments at Statuscode bad
Moderator: uasdknet
-
- Hero Member
- Posts: 23
- Joined: 23 Aug 2013, 09:30
- Support Team
- Hero Member
- Posts: 3069
- Joined: 18 Mar 2011, 15:09
Re: Call returns no outputarguments at Statuscode bad
Hello Nico,
this behavior is normal.
We distinguish to different results:
1) service level result
2) operation level result
Whereas the first means that the UA service failed, a special response would be returned whcih contains no more information, than just the bad service result. The second is the result for each of the methods that were contained in the array of methods inside the UA call service. When returniong a bad status code the outarguments are typically not valid and therefore missing. This is analog to UA read service on variables, where you would not get a value if the status is bad.
The only exception is the bad invalid arguments, in that case the inputarguments are given to show the client in more detail what he is doing wrong.
If you need to pass additional failure information (e.g. of the inner oeration result of a method call) you could use the DiagnosticInfo, but not the outputargument (in combination with bad status on operation level).
Best Regards
Support Team
this behavior is normal.
We distinguish to different results:
1) service level result
2) operation level result
Whereas the first means that the UA service failed, a special response would be returned whcih contains no more information, than just the bad service result. The second is the result for each of the methods that were contained in the array of methods inside the UA call service. When returniong a bad status code the outarguments are typically not valid and therefore missing. This is analog to UA read service on variables, where you would not get a value if the status is bad.
The only exception is the bad invalid arguments, in that case the inputarguments are given to show the client in more detail what he is doing wrong.
If you need to pass additional failure information (e.g. of the inner oeration result of a method call) you could use the DiagnosticInfo, but not the outputargument (in combination with bad status on operation level).
Best Regards
Support Team