My requirement is to use client_credentials grant_type of OAuth2 to obtain the access token in Mule. I want to implement a OAuth enabled custom connector. I am unable to achieve
It would help if you share your connector code.
However if you are using client-credentials flow, using the @OAuth2 annotations is probably not the way to go as this uses HTTP GET to redirect to the service provider.
As this grant type doesn't require redirection or callbacks, typically you just pass the credentials in as basic auth or in the POST body to a token endpoint.
You're better off using connection management features of Devkit and using a http client to call out to your token endpoint and store the token endpoint in the @Connect method:
http://www.mulesoft.org/documentation/display/34X/Implementing+Connection+Management
private String token;
@Connect
public void connect(@ConnectionKey String clientKey, @Password String clientSecret)
throws ConnectionException
{
//HTTP client to call token endpoint:
//curl -u TestClient:TestSecret https://api.mysite.com/token -d 'grant_type=client_credentials'
this.token = "extract from response"
}