Just had a client with the same issue and it indeed was a permissions issue.
Make sure your datasource has the appropriate permissions on it to allow access from the web and/or your user has the appropriate permissions to access it when using the web client.