$scope.googlelogin = function(isLink){
window.alert("entered googlelogin");
var clientId = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var ref = window.open('https://accounts.google.com/o/oauth2/auth?client_id=' + clientId + '&redirect_uri=http://localhost/callback&scope=https://www.googleapis.com/auth/urlshortener&approval_prompt=force&response_type=code&access_type=offline', '_blank', 'location=no');
window.alert("got the ref");
ref.addEventListener('loadstart', function(event) {
window.alert("entered add ref eveent listener"+event.url);
window.alert("entered eventURL");
requestToken = (event.url).split("code=")[1];
window.alert("got Request token"+requestToken);
$http({method: "post", url: "https://accounts.google.com/o/oauth2/token", data: "client_id=" + clientId + "&client_secret=" + clientSecret + "&redirect_uri=http://localhost/callback" + "&grant_type=authorization_code" + "&code=" + requestToken })
.success(function(data) {
accessToken = data.access_token;
window.alert("access token is==:"+accessToken);
//$location.path("/secure");
$scope.logincb(accessToken, 'google', isLink);
})
.error(function(data, status) {
alert("ERROR: DAMMMMNNNN"+JSON.stringify(data));
});
ref.close();
});$scope.logincb = function(t,social,isLink){
alert("entered logincb()"+social);
var token = t;
var link = isLink ? 'linkWith':'loginWith';
var headers = {'Content-Type': 'application/json','X-BAASBOX-APPCODE':1234567890}
/*if(isLink){
headers['X-BB-SESSION'] = auth.getToken();
}*/
alert("entered $apply method");
$http({
method: isLink?'PUT':'POST',
url: serverUrl+"/social/"+social+"?oauth_token="+token+"&oauth_secret="+token,
data:{},
headers: headers
}).success(function(data){
if(!isLink){
alert("success"+data["data"].user);
//$location.path("/posts")
}else{
alert("loaf from exixting");
//auth.getLogins().push(social);
}
}).error(function(data){
alert("error block"+JSON.stringify(data));// Here i'm getting the error block which i have specified above
console.log(data);
})
}
"result": "error",
"message": "java.lang.NullPointerException\n\tat com.baasbox.controllers.Social.extractOAuthTokensFromRequest(Social.java:122)\n\tat com.baasbox.controllers.Social.lambda$loginWith$217(Social.java:150)\n\tat com.baasbox.controllers.Social$$Lambda$65/1292737550.apply(Unknown Source)\n\tat com.baasbox.db.DbHelper.lambda$withDbFromContext$247(DbHelper.java:838)\n\tat com.baasbox.db.DbHelper$$Lambda$17/1018682605.apply(Unknown Source)\n\tat play.core.j.FPromiseHelper$$anonfun$promise$2.apply(FPromiseHelper.scala:34)\n\tat scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)\n\tat scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)\n\tat play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)\n\tat akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)\n\tat akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)\n\tat scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)\n\tat scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)\n\tat scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)\n\tat scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)\n",
"resource": "/social/google",
"method": "POST",
"request_header": {
"X-BAASBOX-APPCODE": [
"1234567890"
],
$scope.createUserWithBaasbox = function(t,social,isLink){
var token = t;
var headers = {'X-BAASBOX-APPCODE':1234567890}
if(isLink){
alert("entered if");
headers['X-BB-SESSION'] = auth.getToken();
}
alert("entered $apply method");
$http({
method: isLink?'PUT':'POST',
headers: headers,
url: serverUrl+"/social/"+social+"?oauth_token="+token+"&oauth_secret="+token,
data:{}
}).success(function(data){
if(!isLink){
alert("success"+JSON.stringify(data));
var userSessionValue = data['data']['X-BB-SESSION'];
//alert(userSessionValue);
var visibleByRegisteredUsers = data['data'].visibleByRegisteredUsers;
if(visibleByRegisteredUsers.email == undefined){
alert(JSON.stringify(visibleByRegisteredUsers));
visibleByRegisteredUsers.email = data['data'].visibleByTheUser.email;
//alert(visibleByRegisteredUsers.email);
visibleByRegisteredUsers.type = "SUBSCRIBER";
visibleByRegisteredUsers.redeemedCount = 0;
visibleByRegisteredUsers.name = data['data'].visibleByTheUser.name;
visibleByRegisteredUsers.dateOfBirth = "";
visibleByRegisteredUsers.emailSubscription = true;
//alert("heyyy"+JSON.stringify(visibleByRegisteredUsers));
visibleByRegisteredUsers.shareCount = 0;
if(social == 'facebook'){
visibleByRegisteredUsers.gender = data['data'].visibleByTheUser.gender;
}
else{
visibleByRegisteredUsers.gender = "";
}
//alert(JSON.stringify(visibleByRegisteredUsers));
$http({
method:'PUT',
url: serverUrl+"/me",
data:{"visibleByRegisteredUsers" : visibleByRegisteredUsers},
headers: {'Content-Type': 'application/json',
'X-BB-SESSION' : data['data']['X-BB-SESSION']
}
}).success(function(data){
alert(data);
//TODO:local storage has to be implemented
$state.go("app.dummy");
//console.log(JSON.stringify(data));
})
.error(function(data){
alert("error block is",data);
//console.log(JSON.stringify(data));
})
}
//alert("not entered into if loop");
//TODO:local storage has to be implemented
$state.go('app.dummy');
//auth.setUser(data["data"].user,{"sso":social,"auth_token":token,"auth_secret":token},data["data"]["X-BB-SESSION"]);
//$location.path("/posts")
}
else{
//alert("loaf from exixting");
//auth.getLogins().push(social);
}
}).error(function(data){
alert("error block is"+JSON.stringify(data));
console.log(JSON.stringify(data));
})
alert("before $scope.$apply");
}
{"result":"error","message":"java.lang.NullPointerException\n\tat com.baasbox.controllers.Social.extractOAuthTokensFromRequest(Social.java:110)\n\tat com.baasbox.controllers.Social.loginWith(Social.java:138)\n\tat Routes$$anonfun$routes$1$$anonfun$applyOrElse$25$$anonfun$apply$25.apply(routes_routing.scala:897)\n\tat Routes$$anonfun$routes$1$$anonfun$applyOrElse$25$$anonfun$apply$25.apply(routes_routing.scala:897)\n\tat play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183)\n\tat play.core.Router$Routes$$anon$1.invocation(Router.scala:377)\n\tat play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56)\n\tat play.GlobalSettings$1.call(GlobalSettings.java:64)\n\tat com.baasbox.controllers.actions.filters.ConnectToDBFilter.call(ConnectToDBFilter.java:81)\n\tat com.baasbox.controllers.actions.filters.AdminCredentialWrapFilter.call(AdminCredentialWrapFilter.java:68)\n\tat play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91)\n\tat play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90)\n\tat play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)\n\tat play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)\n\tat scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:251)\n\tat scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:249)\n\tat scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)\n\tat play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)\n\tat akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)\n\tat akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)\n\tat scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)\n\tat scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)\n\tat scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)\n\tat scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)\n","resource":"/social/facebook","method":"POST","request_header":{"Accept":["*/*"],"Host":["www.<HOSTNAME>.com:9000"],"User-Agent":["curl/7.43.0"],"X-BAASBOX-APPCODE":["1234567890"]},"API_version":"0.9.4","http_code":500}
It looks a little bit like a bug that came back... :(
Ori
{"result":"error","message":"java.lang.NullPointerException\n\tat com.baasbox.controllers.Social.extractOAuthTokensFromRequest(Social.java:110)\n\tat com.baasbox.controllers.Social.loginWith(Social.java:138)\n\tat Routes$$anonfun$routes$1$$anonfun$applyOrElse$25$$anonfun$apply$25.apply(routes_routing.scala:897)\n\tat Routes$$anonfun$routes$1$$anonfun$applyOrElse$25$$anonfun$apply$25.apply(routes_routing.scala:897)\n\tat play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183)\n\tat play.core.Router$Routes$$anon$1.invocation(Router.scala:377)\n\tat play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56)\n\tat play.GlobalSettings$1.call(GlobalSettings.java:64)\n\tat com.baasbox.controllers.actions.filters.ConnectToDBFilter.call(ConnectToDBFilter.java:81)\n\tat com.baasbox.controllers.actions.filters.AdminCredentialWrapFilter.call(AdminCredentialWrapFilter.java:68)\n\tat play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91)\n\tat play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90)\n\tat play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)\n\tat play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)\n\tat scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:251)\n\tat scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:249)\n\tat scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)\n\tat play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)\n\tat akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)\n\tat akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)\n\tat scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)\n\tat scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)\n\tat scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)\n\tat scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)\n","resource":"/social/facebook","method":"POST","request_header":{"X-BAASBOX-APPCODE":["1234567890"],"Content-Length":["444"],"Accept":["*/*"],"X-BB-SESSION":["48d6fe06-62a3-4b39-af8a-ef2397687bf8"],"Content-Type":["application/x-www-form-urlencoded"],"User-Agent":["curl/7.43.0"],"Host":["localhost:9000"]},"API_version":"0.9.4","http_code":500}
curl -X POST -H "x-baasbox-appcode: 1234567890" -H "Content-Type: application/json" -d '{
"oauth_token":"...",
"oauth_secret":"..."
}' 'http://localhost:9000/social/facebook'