Uploaded image for project: 'Crowd Data Center'
  1. Crowd Data Center
  2. CWD-4129

CrowdID v2 server does not work out of the box in the standalone distribution

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Low Low
    • 2.8.2
    • 2.8
    • OpenID
    • None

      Steps to reproduce

      Download, unpack, set the crowd.home dir and install the Crowd standalone distribution as usual. Remember to enable the CrowdID integrated application during the set up process.

      Expected behaviour

      The new CrowdID v2 server works without requiring extra configuration.

      Observed behaviour

      The following exception is logged in the catalina.out file (not the Crowd log file) shortly after running `./start_crowd.sh`:

      INFO: Deploying configuration descriptor /Users/dberrueta/smoke/atlassian-crowd-2.8.0/apache-tomcat/conf/Catalina/localhost/openidserver.xml
      2014-11-12 10:25:45,421 localhost-startStop-1 WARN [springframework.context.support.PropertySourcesPlaceholderConfigurer] Could not load properties from URL [file:${crowd.openid.home}/jdbc.properties]: ${crowd.openid.home}/jdbc.properties (No such file or directory)
      2014-11-12 10:25:45,421 localhost-startStop-1 WARN [springframework.context.support.PropertySourcesPlaceholderConfigurer] Could not load properties from URL [file:${crowd.openid.home}/crowd.properties]: ${crowd.openid.home}/crowd.properties (No such file or directory)
      2014-11-12 10:25:45,421 localhost-startStop-1 WARN [springframework.context.support.PropertySourcesPlaceholderConfigurer] Could not load properties from URL [file:${crowd.openid.properties}]: ${crowd.openid.properties} (No such file or directory)
      2014-11-12 10:25:46,376 localhost-startStop-1 INFO [com.atlassian.crowd.startup] Starting the Crowd OpenID server, version: 2.8.0 (Build:#645 - 2014-11-05) 
      
      *********************************************************************************************
      *
      *  You can now use the Crowd OpenID server by visiting http://localhost:8095/openidserver
      *
      *********************************************************************************************
      
      2014-11-12 10:25:46,488 localhost-startStop-1 WARN [springframework.context.support.PropertySourcesPlaceholderConfigurer] Could not load properties from URL [file:${crowd.openid.home}/jdbc.properties]: ${crowd.openid.home}/jdbc.properties (No such file or directory)
      2014-11-12 10:25:46,488 localhost-startStop-1 WARN [springframework.context.support.PropertySourcesPlaceholderConfigurer] Could not load properties from URL [file:${crowd.openid.home}/crowd.properties]: ${crowd.openid.home}/crowd.properties (No such file or directory)
      2014-11-12 10:25:46,488 localhost-startStop-1 WARN [springframework.context.support.PropertySourcesPlaceholderConfigurer] Could not load properties from URL [file:${crowd.openid.properties}]: ${crowd.openid.properties} (No such file or directory)
      2014-11-12 10:25:46,630 localhost-startStop-1 INFO [crowd.service.client.ClientResourceLocator] The file cannot be read or does not exist: ${crowd.openid.home}/crowd.properties
      2014-11-12 10:25:46,635 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Loading property: 'application.name' : 'crowd-openid-server'
      2014-11-12 10:25:46,635 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Loading property: 'application.login.url' : 'http://localhost:8095/openidserver'
      2014-11-12 10:25:46,635 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Loading property: 'session.tokenkey' : 'session.tokenkey'
      2014-11-12 10:25:46,635 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Loading property: 'session.lastvalidation' : 'session.lastvalidation'
      2014-11-12 10:25:46,635 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Loading property: 'session.validationinterval' : '0'
      2014-11-12 10:25:46,635 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Failed to find value for property: cookie.domain
      2014-11-12 10:25:46,636 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Failed to find value for property: application.login.url.template
      2014-11-12 10:25:46,636 localhost-startStop-1 INFO [openid.server.filter.OpenIDServerClientPropertiesImpl] Loading property: 'application.base.url' : 'http://localhost:8095/openidserver'
      2014-11-12 10:25:46,774 localhost-startStop-1 INFO [crowd.service.client.ClientResourceLocator] The file cannot be read or does not exist: ${crowd.openid.home}/crowdid.approval-whitelist
      2014-11-12 10:25:46,776 localhost-startStop-1 INFO [server.manager.site.ApprovalWhitelist] Using file as a site approval whitelist: /Users/dberrueta/smoke/atlassian-crowd-2.8.0/crowd-openidserver-webapp/WEB-INF/classes/crowdid.approval-whitelist
      2014-11-12 10:25:46,833 localhost-startStop-1 WARN [org.openid4java.server.RealmVerifier] RP discovery / realm validation disabled; 
      2014-11-12 10:25:47,525 openid-spray-akka.actor.default-dispatcher-4 ERROR [spray.server.servlet.Boot] Failed to configure and start spray component of openid server
      java.lang.IllegalStateException: OpenID server application.login.url.template not configured or missing ${RETURN_TO_URL} variable
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$6$$anonfun$apply$8.apply(Boot.scala:44)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$6$$anonfun$apply$8.apply(Boot.scala:44)
      	at scala.Option.fold(Option.scala:157)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$6.apply(Boot.scala:45)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$6.apply(Boot.scala:39)
      	at scala.util.Success.flatMap(Try.scala:200)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1$$anonfun$apply$4.apply(Boot.scala:39)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1$$anonfun$apply$4.apply(Boot.scala:36)
      	at scala.util.Success.flatMap(Try.scala:200)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1.apply(Boot.scala:36)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1$$anonfun$apply$1.apply(Boot.scala:35)
      	at scala.util.Success.flatMap(Try.scala:200)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1.apply(Boot.scala:35)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot$$anonfun$buildConfig$1.apply(Boot.scala:34)
      	at scala.util.Success.flatMap(Try.scala:200)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot.buildConfig(Boot.scala:34)
      	at com.atlassian.crowd.openid.spray.server.servlet.Boot.<init>(Boot.scala:65)
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      	at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
      	at spray.servlet.Initializer$$anonfun$contextInitialized$1.apply$mcV$sp(Initializer.scala:54)
      	at akka.util.Switch.transcend(LockUtil.scala:27)
      	at akka.util.Switch.switchOn(LockUtil.scala:48)
      	at spray.servlet.Initializer.contextInitialized(Initializer.scala:33)
      	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
      	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
      	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
      	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
      	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
      	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
      	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
      	at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1862)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      Nov 12, 2014 10:25:47 AM org.apache.catalina.startup.HostConfig deployDescriptor
      INFO: Deployment of configuration descriptor /Users/dberrueta/smoke/atlassian-crowd-2.8.0/apache-tomcat/conf/Catalina/localhost/openidserver.xml has finished in 5,906 ms
      

      The "old" CrowdID server works fine, but any request made to the /v2 server, like http://localhost:8095/openidserver/v2/op returns a 500 error with a stacktrace, that is also logged in the catalina.out:

      2014-11-12 10:30:28,196 http-bio-8095-exec-1 ERROR [500ErrorPage] Exception caught in 500 page requirement failed: No ActorSystem configured
      java.lang.IllegalArgumentException: requirement failed: No ActorSystem configured
      	at scala.Predef$.require(Predef.scala:233)
      	at spray.servlet.Servlet30ConnectorServlet.init(Servlet30ConnectorServlet.scala:50)
      	at javax.servlet.GenericServlet.init(GenericServlet.java:158)
      	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)
      	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)
      	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:864)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:134)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
      	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
      	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      	at java.lang.Thread.run(Thread.java:745)
      

            [CWD-4129] CrowdID v2 server does not work out of the box in the standalone distribution

            Monique Khairuliana (Inactive) made changes -
            Workflow Original: Simplified Crowd Development Workflow v2 - restricted [ 1508720 ] New: JAC Bug Workflow v3 [ 3364228 ]
            Status Original: Resolved [ 5 ] New: Closed [ 6 ]
            Owen made changes -
            Workflow Original: Simplified Crowd Development Workflow v2 [ 1389818 ] New: Simplified Crowd Development Workflow v2 - restricted [ 1508720 ]
            Owen made changes -
            Workflow Original: Crowd Development Workflow v2 [ 760523 ] New: Simplified Crowd Development Workflow v2 [ 1389818 ]

            how is this resloved?? I am having this issue also what exactly do you mean by "install the Crowd standalone distribution as usual."

            sanjay sahuu added a comment - how is this resloved?? I am having this issue also what exactly do you mean by "install the Crowd standalone distribution as usual."

            intersol_OLD, I cannot reproduce that problem. I have copied that line to my crowd.properties and Crowd 2.8.0 starts normally.

            What error do you see when Crowd fails to start?

            Diego Berrueta added a comment - intersol_OLD , I cannot reproduce that problem. I have copied that line to my crowd.properties and Crowd 2.8.0 starts normally. What error do you see when Crowd fails to start?

            intersol_old added a comment -

            How fun, adding this line to the crowd.properties did prevented the crowd server 2.8.0 from starting!!

            application.login.url.template=https\://crowd.example.com/openidserver?returnToUrl=${RETURN_TO_URL}
            

            intersol_old added a comment - How fun, adding this line to the crowd.properties did prevented the crowd server 2.8.0 from starting!! application.login.url.template=https\: //crowd.example.com/openidserver?returnToUrl=${RETURN_TO_URL}

            intersol_old added a comment -

            Is not quite a pleasure to see bugs as resolved on a version that is not released yet. Latest version release is still 2.8

            intersol_old added a comment - Is not quite a pleasure to see bugs as resolved on a version that is not released yet. Latest version release is still 2.8
            joe made changes -
            Fix Version/s New: 2.8.2 [ 50300 ]
            Fix Version/s Original: 2.8.1 [ 46095 ]
            joe made changes -
            Remote Link New: This issue links to "Page (Extranet)" [ 87102 ]

            joe added a comment -

            As a workaround, edit the Crowd OpenID server's crowd.properties file, either directly or via openidserver.properties and the build.sh script to add:

            application.login.url.template          http://localhost:8095/openidserver?returnToUrl=${RETURN_TO_URL}
            

            (With the URL adjusted for your installation.)

            joe added a comment - As a workaround, edit the Crowd OpenID server's crowd.properties file, either directly or via openidserver.properties and the build.sh script to add: application.login.url.template http://localhost:8095/openidserver?returnToUrl=${RETURN_TO_URL} (With the URL adjusted for your installation.)

              Unassigned Unassigned
              dberrueta Diego Berrueta
              Affected customers:
              0 This affects my team
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: