Repository navigation
Native null pointer exception for JIRA provider (Java). #234
Copy link
Copy link
Open
Description
When trying to add a provider for JIRA OAuth 1.0, the native Java code crashes on a Null Pointer Exception on oauth10aService.getRequestToken() (line 240 in OAuthManagerFragmentController$LoadRequestTokenTask).
The stack trace is as follows:
java.lang.RuntimeException: An error occurred while executing doInBackground()
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at android.os.AsyncTask$3.done(AsyncTask.java:318)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.util.concurrent.FutureTask.run(FutureTask.java:242)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.lang.Thread.run(Thread.java:762)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'com.github.scribejava.core.model.OAuth1RequestToken com.github.scribejava.core.oauth.OAuth10aService.getRequestToken()' on a null object reference
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at io.fullstack.oauth.OAuthManagerFragmentController$LoadRequestTokenTask.doInBackground(OAuthManagerFragmentController.java:240)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at io.fullstack.oauth.OAuthManagerFragmentController$LoadRequestTokenTask.doInBackground(OAuthManagerFragmentController.java:226)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at android.os.AsyncTask$2.call(AsyncTask.java:304)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
11-06 15:49:40.158 25802 25951 E AndroidRuntime: ... 4 more
The provider is added and configured as follows:
this.manager = new OAuthManager("My-App-Name");
this.manager.addProvider({
jira:
{
auth_version: '1.0',
authorize_url: 'https://my-hosted-jira-name.atlassian.net/plugins/servlet/oauth/authorize',
access_token_url: 'https://my-hosted-jira-name.atlassian.net/plugins/servlet/oauth/access-token',
request_token_url: "https://my-hosted-jira-name.atlassian.net/plugins/servlet/oauth/request-token",
callback_url: () => "http://localhost/jira",
api_url: 'https://my-hosted-jira-name.atlassian.net/rest/api/2',
}
})
this.manager.configure({
jira: {
client_id: 'My Consumer Key',
client_secret: 'my-secret-private-key-that-I-removed-for-security'
}
});
And then the authorization is kicked-off by calling:
authorize = async () =>
{
try
{
const response = await this.manager.authorize('jira');
console.log("RESPONSE: " + JSON.stringify(response));
}
catch(e)
{
console.log("ERROR: " + JSON.stringify(e));
}
}
Any help trying to figure out what is going on is greatly appreciated, so thanks in advance!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
TeunKooijman commentedon Nov 8, 2018
Upon closer inspection the problem seems to be in the
static public OAuth10aService getApiFor10aProvider()method inOAuthManagerProviders.javaon line42. WheregetApiFor20Provider()actually has a fall through leading to returning a call toOAuthManagerProviders.configurableService(), the1.0aversion falls through to returning null instead.Was this intentional? If not, is there any chance this could be fixed soon?
The screenshot below shows exactly what I mean:
ahmedtehseen commentedon Jun 11, 2019
@TeunKooijman did you solve this issue.?
ahmedtehseen commentedon Jun 11, 2019
I'm having same problem with facebook provider.