Today a quick diagnosis of the problem presented in the title of the post.
We consider the following scenario:
- Orchestrator 2012 R2 installed on a Windows 2012 R2 server
- Imported Integration Pack for REST
- Configured regional settings that assume a decimal separator other than a period ('.')
- In the parameters of the "Invoke Rest Service" action, the string value "1.0″ or "1.1″ is entered according to the documentation
In Poland, we usually deal with such a scenario , where the usual decimal separator is a comma.
And he is the reason for the problem, in case we are sure that the last point of the scenario was implemented correctly.
Inside the implementation of this action is the equivalent of the following code (here I cite powershell to easily confirm the diagnosis):
1
2 3 4 5 6 7 |
$result = 0;
$HTTPVersion = "1.1" $status = [float]::TryDecode($HTTPVersion, [ref]$result); if(($status -ne $true) -or ($HTTPVersion -ne "1.0") -or ($HTTPVersion -ne "1.1")) { "Return Error: HTTP Version should be either 1.0 or 1.1"; } |
In a situation where the decimal separator is not set to the character in the regional settings '.'
then in line number 3 will be set $status == $false
.
The solution is to set the registry key HKUSID Control PanelDecimal.
and HKUSIDControl PanelMonDecimalSep.
for a user with an SID value per character '.'
Finally, restart the orchestrator service, and the problem will be solved.
I first described the topic by responding to question from a Russian-speaking technet person.