Dear,
I installed the Social Login extension from the control panel in the last xwiki-xem manager with two sub-wiki, I can't get the login working. I attached the full error, it's a null pointer exceptions, but I can't find a reference to the exact macro line.

Thank you,
Gianluca


org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Script Macro for content [import org.brickred.socialauth.AuthProvider
import org.brickred.socialauth.AuthProviderFactory

/**
* Displays a form with a single field for a new SSO user to pickup its usernamem
 */
def outputUsernameCreationForm = { defaultValue, provider ->
  if (!defaultValue)
    defaultValue = ""
  xwiki.ssx.use('XWiki.SocialLogin')
  println """
{{html clean=false}}
<form class="xform" action=${doc.getURL('view')} method="post" id="createUsernameForm">
  <div class="centered">
    <fieldset class="xwikimessage">
<legend><span>${msg.get('xwiki.socialLogin.youMustBeNewHere')}</ span></legend>
      <input type="hidden" name="xaction" value="createProfile" />
      <p class="message">
${msg.get('xwiki.socialLogin.createProfileMessage', [provider])}
      </p>
      <dl>
        <dt>${msg.get('xwiki.socialLogin.pickupUsername')}</dt>
<dd><input type="text" name="username" value="$ {defaultValue}" /></dd>
      </dl>
      <div class="buttons">
        <span class="buttonwrapper">
<input class="button" type="submit" value="$ {msg.get('xwiki.socialLogin.createMyAccount')}" />
        </span>
      </div>
    </fieldset>
  </div>
</form>
{{/html}}
"""
}

/**
* Authenticate a user and make it remembered in XWiki authentication system
 */
def authenticateUser = { userDoc ->
def password = userDoc .getObject('XWiki.SocialLoginClass').getProperty('password_cache').value def xwikiAuthenticator = [email protected]()[email protected]('xwiki')
  def psm = xwikiAuthenticator.@persistentLoginManager
  psm.rememberLogin(request, response, userDoc.fullName, password)
  response.sendRedirect(xwiki.getURL('Main.WebHome', 'view'))
}


// Load oauth properties file
def properties = new java.util.Properties()
properties .load (com .xpn .xwiki .web .Utils .getComponent ("org .xwiki.container.Container").applicationContext.getResourceAsStream("/ WEB-INF/oauth_consumer.properties"))

/**
 * Initiate the OAuth dance with the requested provider
 */
if(!request.callback && request.provider) {

  try {

def provider = AuthProviderFactory.getInstance(request.provider, properties)

    println provider

String url = provider.getLoginRedirectURL(doc.getExternalURL('view','callback=1'));

    // Store in session
request.session.setAttribute("org.brickred.socialauth.AuthProvider", provider); request .session.setAttribute("org.brickred.socialauth.AuthProvider.hint", request.provider);

    response.sendRedirect(url)
  }
  catch(Exception e) {
    println """
{{error}}
${msg.get('xwiki.socialLogin.genericError', [e.message])}
{{/error}}
"""
  }

}
/**
 * We've got a response from the provider, let's treat it
 */
else if (request.callback){

  try {

    // get the provider back from session
def provider = request.session.getAttribute("org.brickred.socialauth.AuthProvider"); def providerID = request .session.getAttribute("org.brickred.socialauth.AuthProvider.hint");

    // verify the authentication
    def profile = provider.verifyResponse(request);

    // Search for this user in database
def query = services.query.xwql("from doc.object(XWiki.XWikiUsers) as user, doc.object(XWiki.SocialLoginProfileClass) as profile where profile.provider = '" + providerID + "' and profile.validatedId = '" + profile.validatedId + "'")

    for (result in query.execute()) {
      authenticateUser(xwiki.getDocument(result))
    }

    // Not authenticated/redirected yet ? -> You must be new here
// You will have to pick-up a username and dad will create an account for you

    // Store the social profile in the session
request.session.setAttribute("org.brickred.socialauth.Profile", profile);

    // Try to guess what username the user will want to use
    def guessedUsername = profile.displayName

    // Outputs the form to create the username
    outputUsernameCreationForm(guessedUsername, providerID)

  } catch(Exception e) {
    println """
{{error}}
${msg.get('xwiki.socialLogin.genericError', [e.message])}
{{/error}}
"""
  }

}
/**
 * Create a new user profile from the social profile result
 */
else if (request.xaction && request.xaction == 'createProfile') {

def profile = request.session.getAttribute("org.brickred.socialauth.Profile") def provider = request .session.getAttribute("org.brickred.socialauth.AuthProvider.hint");

  def username = request.username
if (username && username != '' && !xwiki.exists("XWiki." + username)) {
    // Everything clear, let's proceed

    def userDocName = "XWiki." + username

    // Generate a random password
    password = xwiki.generateRandomString(16)

    def propMap = [:]
    propMap.put("active", "1")
    propMap.put("email", profile.email)
    propMap.put("first_name", profile.firstName)
    propMap.put("last_name", profile.lastName)
    propMap.put("password", password)

    [email protected](username, propMap, xcontext.@context)

    def userDoc = xwiki.getDocument(userDocName)

def socialProfile = userDoc.getObject('XWiki.SocialLoginProfileClass', true)
    socialProfile.set('provider', provider)
    socialProfile.set('fullName', profile.fullName)
    socialProfile.set('firstName', profile.firstName)
    socialProfile.set('lastName', profile.lastName)
    socialProfile.set('displayName', profile.displayName)
    socialProfile.set('email', profile.email)
    socialProfile.set('profileImageURL', profile.profileImageURL)
    socialProfile.set('gender', profile.gender)
    socialProfile.set('dob', profile.dob)
    socialProfile.set('validatedId', profile.validatedId)
    socialProfile.set('country', profile.country)
    socialProfile.set('location', profile.location)

    def socialPrefs = userDoc.getObject('XWiki.SocialLoginClass', true)
    socialPrefs.set('password_cache', password)
    socialPrefs.set('preferred_provider', provider)

userDoc .saveWithProgrammingRights (msg.get('xwiki.socialLogin.updatedSocialProfile'), true)

    authenticateUser(userDoc)
  }
  else {

    if (!username || username == '')
      println """
{{error}}
${msg.get('xwiki.socialLogin.youMustPickUsername')}
{{/error}}
"""

    else if (xwiki.exists('XWiki.' + username))
      println """
{{error}}
${msg.get('xwiki.socialLogin.usernameAlreadyTaken')}
{{/error}}
"""

    outputUsernameCreationForm("", provider);
  }

}

/**
 * View mode
 */
else {
  println """
{{info}}
${msg.get('xwiki.socialLogin.nothingToDo')}
{{/info}}
"""
}]
at org .xwiki .rendering .macro .script .AbstractJSR223ScriptMacro .evaluateBlock(AbstractJSR223ScriptMacro.java:174) at org .xwiki .rendering .macro .script .AbstractJSR223ScriptMacro .evaluateBlock(AbstractJSR223ScriptMacro.java:52) at org .xwiki .rendering .macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:198) at org .xwiki .rendering .macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:59) at org .xwiki .rendering .internal .transformation .macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org .xwiki .rendering .internal .transformation .macro.MacroTransformation.transform(MacroTransformation.java:132) at org .xwiki .rendering .internal .transformation .DefaultTransformationManager .performTransformations(DefaultTransformationManager.java:83) at org .xwiki .display .internal .DocumentContentDisplayer.display(DocumentContentDisplayer.java:248) at org .xwiki .display .internal .DocumentContentDisplayer.display(DocumentContentDisplayer.java:124) at org .xwiki .display .internal .DocumentContentDisplayer.display(DocumentContentDisplayer.java:54) at org .xwiki .display .internal .DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:80) at org .xwiki .display .internal .DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:38) at com .xpn .xwiki .internal .sheet.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:113) at com .xpn .xwiki .internal .sheet.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:57) at org .xwiki .display .internal .ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java: 67) at org .xwiki .display .internal .ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java: 41) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java: 862) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java: 841) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java: 872)
        at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:586)
        at sun.reflect.GeneratedMethodAccessor3514.invoke(Unknown Source)
at sun .reflect .DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 43)
        at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.velocity.util.introspection.UberspectImpl $VelMethodImpl.doInvoke(UberspectImpl.java:395) at org.apache.velocity.util.introspection.UberspectImpl $VelMethodImpl.invoke(UberspectImpl.java:384) at org .apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java: 173) at org .apache .velocity.runtime.parser.node.ASTReference.execute(ASTReference.java: 280) at org .apache .velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org .apache .velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org .apache .velocity .runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java: 72) at org .apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java: 342) at org .apache .velocity .runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org .apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java: 342) at org .xwiki .velocity .internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org .xwiki .velocity .internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:184) at com .xpn .xwiki .render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:117)
        at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1791)
        at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1728)
        at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:839)
        at sun.reflect.GeneratedMethodAccessor3337.invoke(Unknown Source)
at sun .reflect .DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 43)
        at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.velocity.util.introspection.UberspectImpl $VelMethodImpl.doInvoke(UberspectImpl.java:395) at org.apache.velocity.util.introspection.UberspectImpl $VelMethodImpl.invoke(UberspectImpl.java:384) at org .apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java: 173) at org .apache .velocity.runtime.parser.node.ASTReference.execute(ASTReference.java: 280) at org .apache .velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java: 72) at org .apache .velocity .runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216) at org .apache .velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311) at org .apache .velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230) at org .apache .velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java: 72) at org .apache .velocity .runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java: 72) at org .apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java: 342) at org .apache .velocity .runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org .apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java: 342) at org .xwiki .velocity .internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org .xwiki .velocity .internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:184) at com .xpn .xwiki .render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:117)
        at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1791)
        at com.xpn.xwiki.web.Utils.parseTemplate(Utils.java:154)
        at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:241)
        at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:116)
at org .apache .struts .action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org .apache.struts.action.RequestProcessor.process(RequestProcessor.java: 236) at org.apache.struts.action.ActionServlet.process(ActionServlet.java: 1196)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java: 538) at org.eclipse.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1352)
        at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:128)
at org.eclipse.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1323) at org .xwiki .wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java: 144) at org.eclipse.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1323) at com .xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:68) at org.eclipse.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1323) at org .xwiki .container .servlet .filters .internal .SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java: 217) at org.eclipse.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1323) at org .xwiki .container .servlet .filters .internal .SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java: 109) at org.eclipse.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1323) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java: 476) at org .eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java: 119) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java: 517) at org .eclipse .jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225) at org .eclipse .jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:937) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java: 406) at org .eclipse .jetty.server.session.SessionHandler.doScope(SessionHandler.java:183) at org .eclipse .jetty.server.handler.ContextHandler.doScope(ContextHandler.java:871) at org .eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java: 117) at org .eclipse .jetty .server .handler.ContextHandlerCollection.handle(ContextHandlerCollection.java: 247) at org .eclipse .jetty.server.handler.HandlerCollection.handle(HandlerCollection.java: 149) at org .eclipse .jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
        at org.eclipse.jetty.server.Server.handle(Server.java:346)
at org .eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java: 589) at org.eclipse.jetty.server.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:1048)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:601)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java: 214) at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java: 411) at org .eclipse .jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java: 535) at org.eclipse.jetty.io.nio.SelectChannelEndPoint $1.run(SelectChannelEndPoint.java:40) at org.eclipse.jetty.util.thread.QueuedThreadPool $3.run(QueuedThreadPool.java:529)
        at java.lang.Thread.run(Thread.java:679)
Caused by: javax.script.ScriptException: javax.script.ScriptException: java.lang.NullPointerException at org .codehaus .groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java: 122) at org .xwiki .rendering .macro .script.AbstractJSR223ScriptMacro.eval(AbstractJSR223ScriptMacro.java: 277) at org .xwiki .rendering .macro .script .AbstractJSR223ScriptMacro .evaluateBlock(AbstractJSR223ScriptMacro.java:209) at org .xwiki .rendering .macro .script .AbstractJSR223ScriptMacro .evaluateBlock(AbstractJSR223ScriptMacro.java:169)
        ... 105 more
Caused by: javax.script.ScriptException: java.lang.NullPointerException
at org .codehaus .groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java: 323) at org .codehaus .groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java: 116)
        ... 108 more
Caused by: java.lang.NullPointerException
_______________________________________________
users mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to