As we transition to the new Hyland Community, some post links may be temporarily disrupted as we finalize redirects. We apologize for the inconvenience and are working to resolve this as quickly as possible. Details.
A few years too late, but anyway: Trying running your versionService.createVersion() inside a valid transaction: How to write code with transactions
If anyone else has this problem using an (unauthenticated) webscript, try adding this to your webscript descriptor:
<authentication runas="admin">user</authentication>
Make sure you use a valid user! (I tried user 'system', which still results in an access denied exception).