Thanks to Richard Heap and his suggestion, I was able to adjust the soap envelope using SoapUI. Turns out, there is no SOAPAction header, because the action is actually passed in Content-Type header:
Header values can be checked like this:
Create a mock service and start it
Create a request and send it
Open the message log in the bottom of the mock service window
As it also turns out, different actions have different namespace versions, so you cannot just use one namespace like
'http://thalesgroup.com/RTTI/2015-05-14/ldb/$action'
and expect it to work with all actions by adding them in the end.