You're posting to the wrong place endpoint...in your code (parts setup clipped out for brevity):
Code:
facebook.post(usersocial.getProvideruserid(),"",parts);
The post() method takes 3 arguments:
1. The object
2. The connection
3. The data to post
Here you've specified the user ID as the object and nothing as that connection. Therefore you're attempting to post that data to the user object (which isn't allowed). Assuming that you want to post that data to the user's wall (aka, "feed"), then what you should do is this:
Code:
facebook.post(usersocial.getProvideruserid(),"feed",parts);
And, then assuming that the access token has been granted publish authority to the user's feed, this should work.