Hi James,
The argument name in the request object most likely is not "request_user_id" but only "user_id", have a look in the signature of that specific transaction what the exact name of the argument is? When you mark an argument as magic string then the runtime will create and store a property by prefixing it with "request_".
With regards to the approach in the post that didn't work for you, can you post the snippet of beanshell that you added to the response in the .vsi? Just for us to understand why that wouldn't have worked.