Code Monkey home page Code Monkey logo

spring-music's Introduction

Spring Music

This is a sample application for using database services on Cloud Foundry with the Spring Framework and Spring Boot.

This application has been built to store the same domain objects in one of a variety of different persistence technologies - relational, document, and key-value stores. This is not meant to represent a realistic use case for these technologies, since you would typically choose the one most applicable to the type of data you need to store, but it is useful for testing and experimenting with different types of services on Cloud Foundry.

The application use Spring Java configuration and bean profiles to configure the application and the connection objects needed to use the persistence stores. It also uses the Java CFEnv library to inspect the environment when running on Cloud Foundry. See the Cloud Foundry documentation for details on configuring a Spring application for Cloud Foundry.

Building

This project requires Java version 17 or later to compile.

Note

If you need to use an earlier Java version, check out the spring-boot-2 branch, which can be built with Java 8 and later.

To build a runnable Spring Boot jar file, run the following command:

$ ./gradlew clean assemble

Running the application locally

One Spring bean profile should be activated to choose the database provider that the application should use. The profile is selected by setting the system property spring.profiles.active when starting the app.

The application can be started locally using the following command:

$ java -jar -Dspring.profiles.active=<profile> build/libs/spring-music-1.0.jar

where <profile> is one of the following values:

  • mysql
  • postgres
  • mongodb
  • redis

If no profile is provided, an in-memory relational database will be used. If any other profile is provided, the appropriate database server must be started separately. Spring Boot will auto-configure a connection to the database using it's auto-configuration defaults. The connection parameters can be configured by setting the appropriate Spring Boot properties.

If more than one of these profiles is provided, the application will throw an exception and fail to start.

Running the application on Cloud Foundry

When running on Cloud Foundry, the application will detect the type of database service bound to the application (if any). If a service of one of the supported types (MySQL, Postgres, Oracle, MongoDB, or Redis) is bound to the app, the appropriate Spring profile will be configured to use the database service. The connection strings and credentials needed to use the service will be extracted from the Cloud Foundry environment.

If no bound services are found containing any of these values in the name, an in-memory relational database will be used.

If more than one service containing any of these values is bound to the application, the application will throw an exception and fail to start.

After installing the 'cf' command-line interface for Cloud Foundry, targeting a Cloud Foundry instance, and logging in, the application can be built and pushed using these commands:

$ cf push

The application will be pushed using settings in the provided manifest.yml file. The output from the command will show the URL that has been assigned to the application.

Creating and binding services

Using the provided manifest, the application will be created without an external database (in the in-memory profile). You can create and bind database services to the application using the information below.

System-managed services

Depending on the Cloud Foundry service provider, persistence services might be offered and managed by the platform. These steps can be used to create and bind a service that is managed by the platform:

# view the services available
$ cf marketplace
# create a service instance
$ cf create-service <service> <service plan> <service name>
# bind the service instance to the application
$ cf bind-service <app name> <service name>
# restart the application so the new service is detected
$ cf restart

User-provided services

Cloud Foundry also allows service connection information and credentials to be provided by a user. In order for the application to detect and connect to a user-provided service, a single uri field should be given in the credentials using the form <dbtype>://<username>:<password>@<hostname>:<port>/<databasename>.

These steps use examples for username, password, host name, and database name that should be replaced with real values.

# create a user-provided Oracle database service instance
$ cf create-user-provided-service oracle-db -p '{"uri":"oracle://root:[email protected]:1521/mydatabase"}'
# create a user-provided MySQL database service instance
$ cf create-user-provided-service mysql-db -p '{"uri":"mysql://root:[email protected]:3306/mydatabase"}'
# bind a service instance to the application
$ cf bind-service <app name> <service name>
# restart the application so the new service is detected
$ cf restart

Changing bound services

To test the application with different services, you can simply stop the app, unbind a service, bind a different database service, and start the app:

$ cf unbind-service <app name> <service name>
$ cf bind-service <app name> <service name>
$ cf restart

Database drivers

Database drivers for MySQL, Postgres, Microsoft SQL Server, MongoDB, and Redis are included in the project.

To connect to an Oracle database, you will need to download the appropriate driver (e.g. from http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html). Then make a libs directory in the spring-music project, and move the driver, ojdbc7.jar or ojdbc8.jar, into the libs directory. In build.gradle, uncomment the line compile files('libs/ojdbc8.jar') or compile files('libs/ojdbc7.jar') and run ./gradle assemble.

Alternate Java versions

By default, the application will be built and deployed using Java 17 compatibility. If you want to use a more recent version of Java, you will need to update two things.

In build.gradle, change the targetCompatibility Java version from JavaVersion.VERSION_17 to a different value from JavaVersion:

java {
  ...
  targetCompatibility = JavaVersion.VERSION_17
}

In manifest.yml, change the Java buildpack JRE version from version: 17.+ to a different value:

    JBP_CONFIG_OPEN_JDK_JRE: '{ jre: { version: 17.+ } }'

spring-music's People

Contributors

alexandreroman avatar andypiper avatar asaikali avatar bardweller avatar darkmouglass avatar drnic avatar h2m avatar mpivotal avatar nebhale avatar pburkholder avatar ramnivas avatar romansauber avatar scottfrederick avatar swagataroy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spring-music's Issues

gradlew set corporate proxy server

Hi

How to setup proxy server in this buildpack?

$ env | grep proxy
http_proxy=http://proxy.example.net:8079
https_proxy=http://proxy.example.net:8079

./gradlew assemble
Downloading https://services.gradle.org/distributions/gradle-2.14-bin.zip

Exception in thread "main" java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:668)
    at sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
    at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
    at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
    at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1105)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:999)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1513)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)
    at org.gradle.wrapper.Download.downloadInternal(Download.java:58)
    at org.gradle.wrapper.Download.download(Download.java:44)
    at org.gradle.wrapper.Install$1.call(Install.java:61)
    at org.gradle.wrapper.Install$1.call(Install.java:48)
    at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)
    at org.gradle.wrapper.Install.createDist(Install.java:48)
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)

Error following basic PCF Dev setup steps

Following along with steps as documented here: https://pivotal.io/platform/pcf-tutorials/getting-started-with-pivotal-cloud-foundry-dev/connect-a-database

unfortunately after adding the mysql service the application fails to work as expected. Error is:

2018-04-26T11:43:32.42-0500 [APP/PROC/WEB/0] ERR Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'cf_1d2d62d8_741a_4a49_aa0c_5f7599b760c4.album' doesn't exist

but it's actually caused above by:

2018-04-26T11:43:29.94-0500 [APP/PROC/WEB/0] OUT 2018-04-26 16:43:29.939  WARN 8 --- [           main] o.h.t.s.i.ExceptionHandlerLoggedImpl     : GenerationTarget encountered exception accepting command : Error executing DDL via JDBC Statement
   2018-04-26T11:43:29.94-0500 [APP/PROC/WEB/0] OUT org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL via JDBC Statement
...
   2018-04-26T11:43:29.94-0500 [APP/PROC/WEB/0] OUT Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown storage engine 'MyISAM'

Binding Redis service

When binding Redis service to spring-music app in Cloud Foundry, the app complains about dependencies not found at runtime:

Caused by: java.lang.ClassNotFoundException: org.apache.commons.pool2.impl.GenericObjectPoolConfig

Spring-music - ./gradle tomcatRun task fail to run

https://github.com/cloudfoundry-samples/spring-music

I am using the spring-music apps to to run on command line with tomcatRun and getting following exceptions

The crash is consistent and happens with STS and command line.

I am running it on windows env.

[sts] -----------------------------------------------------
[sts] Starting Gradle build for the following tasks:
[sts] tomcatRun
[sts] -----------------------------------------------------
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:tomcatRun FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':tomcatRun'.

    An error occurred starting the Tomcat server.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 13.674 secs
[sts] Build failed
org.gradle.tooling.BuildException: Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.9-all.zip'.
at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:53)
at org.gradle.tooling.internal.consumer.async.DefaultAsyncConsumerActionExecutor$1$1.run(DefaultAsyncConsumerActionExecutor.java:57)
at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46)
at org.gradle.tooling.internal.consumer.DefaultBuildLauncher.run(DefaultBuildLauncher.java:67)
at org.springsource.ide.eclipse.gradle.core.TaskUtil.execute(TaskUtil.java:95)
at org.springsource.ide.eclipse.gradle.core.launch.GradleProcess$1.doit(GradleProcess.java:97)
at org.springsource.ide.eclipse.gradle.core.util.GradleRunnable$1.run(GradleRunnable.java:49)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Caused by: org.gradle.api.internal.LocationAwareException: Execution failed for task ':tomcatRun'.
at org.gradle.initialization.DefaultExceptionAnalyser.transform(DefaultExceptionAnalyser.java:83)
at org.gradle.initialization.MultipleBuildFailuresExceptionAnalyser.transform(MultipleBuildFailuresExceptionAnalyser.java:47)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:115)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:64)
at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:70)
at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:30)
at org.gradle.tooling.internal.provider.ConfiguringBuildAction.run(ConfiguringBuildAction.java:108)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:35)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:45)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:42)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.ReturnResult.execute(ReturnResult.java:34)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:71)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:69)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:69)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:60)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:45)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator.runCommand(DaemonStateCoordinator.java:186)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy.doBuild(StartBuildOrRespondWithBusy.java:49)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.HandleStop.execute(HandleStop.java:36)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.DaemonHygieneAction.execute(DaemonHygieneAction.java:36)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.CatchAndForwardDaemonFailure.execute(CatchAndForwardDaemonFailure.java:32)
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:125)
at org.gradle.launcher.daemon.server.exec.DefaultDaemonCommandExecuter.executeCommand(DefaultDaemonCommandExecuter.java:51)
at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.handleCommand(DefaultIncomingConnectionHandler.java:155)
at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.receiveAndHandleCommand(DefaultIncomingConnectionHandler.java:128)
at org.gradle.launcher.daemon.server.DefaultIncomingConnectionHandler$ConnectionWorker.run(DefaultIncomingConnectionHandler.java:116)
at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':tomcatRun'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:286)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.java:79)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:63)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$1.run(DefaultTaskPlanExecutor.java:33)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:198)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:266)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOperation(DefaultPersistentDirectoryStore.java:135)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:93)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:31)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:86)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:166)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
... 47 more
Caused by: org.gradle.api.GradleException: An error occurred starting the Tomcat server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77)
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:102)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:54)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:182)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:194)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun.startTomcat(AbstractTomcatRun.groovy:355)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:361)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:137)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun$_validateConfigurationAndStartTomcat_closure2.doCall(AbstractTomcatRun.groovy:224)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun$_validateConfigurationAndStartTomcat_closure2.doCall(AbstractTomcatRun.groovy)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
at org.gradle.api.plugins.tomcat.internal.LoggingHandler.withJdkFileLogger(LoggingHandler.groovy:43)
at org.gradle.api.plugins.tomcat.internal.LoggingHandler$withJdkFileLogger.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:50)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:157)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:177)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun.validateConfigurationAndStartTomcat(AbstractTomcatRun.groovy:223)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:361)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:137)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun$_start_closure1.doCall(AbstractTomcatRun.groovy:216)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun$_start_closure1.doCall(AbstractTomcatRun.groovy)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
at org.gradle.api.plugins.tomcat.internal.utils.TomcatThreadContextClassLoader.withClasspath(TomcatThreadContextClassLoader.groovy:31)
at org.gradle.api.plugins.tomcat.internal.utils.ThreadContextClassLoader$withClasspath.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:124)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun.start(AbstractTomcatRun.groovy:215)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:219)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:212)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:201)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:530)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:513)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 76 more
Caused by: groovy.lang.MissingMethodException: No signature of method: org.apache.catalina.loader.WebappLoader.addRepository() is applicable for argument types: (java.lang.String) values: [file:/C:/HDRIVE/DEVWORKSPACE/X-CLOUD-FOUNDARY-APPS/spring-music/build/classes/main/]
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:55)
at org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:46)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at org.gradle.api.plugins.tomcat.tasks.TomcatRun$_configureWebApplication_closure1.doCall(TomcatRun.groovy:151)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at groovy.lang.Closure.call(Closure.java:412)
at groovy.lang.Closure.call(Closure.java:425)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1376)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1348)
at org.codehaus.groovy.runtime.dgm$162.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:271)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at org.gradle.api.plugins.tomcat.tasks.TomcatRun.configureWebApplication(TomcatRun.groovy:150)
at org.gradle.api.plugins.tomcat.tasks.AbstractTomcatRun.startTomcat(AbstractTomcatRun.groovy:315)
... 176 more
[sts] Time taken: 0 min, 13 sec
[sts] -----------------------------------------------------

spring-music/build/ directory is not present. Unable to complete cf push for this app.

When pushing this application, CF CLI errors out saying there isn't a spring-music/build directory. See error below:

MacBook-Pro-5:spring-music rmcmillion$ cf push
Using manifest file /Users/rmcmillion/Datafiles/spring-music/manifest.yml

Creating app spring-music in org system / space autoscaling as admin...
OK

Creating route spring-music-severer-scouthood.cfapps-13.haas-59.pez.pivotal.io...
OK

Binding spring-music-severer-scouthood.cfapps-13.haas-59.pez.pivotal.io to spring-music...
OK

FAILED
Error processing app files: lstat /Users/rmcmillion/Datafiles/spring-music/build: no such file or directory

The build directory was included in previous versions the of spring-music app.

Spring Boot application cannot be bind to a Service - Postgresql using cf deployed on k8s

Issue

When we restage the spring-music application after creating the postgresql service and bint it to the app, then the log of the application reports the following error

cf create-service postgresql 11-6-0 postgresql-svc
cf bind-service spring-music postgresql-svc
cf restage spring-music

Error

2020-04-22T11:22:04.87+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT Calculated JVM Memory Configuration: -XX:MaxDirectMemorySize=10M -XX:MaxMetaspaceSize=129558K -XX:ReservedCodeCacheSize=240M -Xss1M -Xmx358441K (Head Room: 0%, Loaded Class Count: 20460, Thread Count: 250, Total Memory: 1024000000)
   2020-04-22T11:22:06.28+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.286 [main] DEBUG org.springframework.boot.context.logging.ClasspathLoggingApplicationListener - Application failed to start with classpath: unknown
   2020-04-22T11:22:06.45+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.456 [background-preinit] DEBUG org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator - Loaded expression factory via original TCCL
   2020-04-22T11:22:06.46+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.469 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator as ValidatorFactory-scoped message interpolator.
   2020-04-22T11:22:06.46+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.469 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.engine.resolver.JPATraversableResolver as ValidatorFactory-scoped traversable resolver.
   2020-04-22T11:22:06.46+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.469 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.util.ExecutableParameterNameProvider as ValidatorFactory-scoped parameter name provider.
   2020-04-22T11:22:06.47+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.469 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.engine.DefaultClockProvider as ValidatorFactory-scoped clock provider.
   2020-04-22T11:22:06.47+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.470 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.engine.scripting.DefaultScriptEvaluatorFactory as ValidatorFactory-scoped script evaluator factory.
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT 09:22:06.611 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT java.lang.IllegalStateException: Exiting the application since the Spring Cloud Connector library has been detected on the classpath.  Please remove this dependency from your project and set the environment variable JBP_CONFIG_SPRING_AUTO_RECONFIGURATION '{enabled: false}' in the Cloud Foundry manifest.
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at io.pivotal.cfenv.spring.boot.ConnectorLibraryDetector.assertNoConnectorLibrary(ConnectorLibraryDetector.java:43)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at io.pivotal.cfenv.spring.boot.CfDataSourceEnvironmentPostProcessor.postProcessEnvironment(CfDataSourceEnvironmentPostProcessor.java:78)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEnvironmentPreparedEvent(ConfigFileApplicationListener.java:188)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEvent(ConfigFileApplicationListener.java:176)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:76)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
   2020-04-22T11:22:06.61+0200 [/0089ca34-1233-4e26-864c-f9dc9e0b54c3] OUT at org.cloudfoundry.samples.music.Application.main(Application.java:16)

Additionnal information

The service is well created

cf service postgresql-svc
Showing info of service postgresql-svc in org redhat.com / space demo as admin...

name:             postgresql-svc
service:          postgresql
tags:
plan:             11-6-0
description:      Helm Chart for postgresql
documentation:
dashboard:
service broker:   minibroker

Showing status of last operation from service postgresql-svc...

status:    create succeeded
message:   service instance "43c24aba-0ad0-4a02-a5f5-e481c7c8f3da" provisioned
started:   2020-04-22T09:15:54Z
updated:   2020-04-22T09:16:54Z

bound apps:
name           binding name   status             message
spring-music                  create succeeded

Upgrades are not supported by this broker.

and binding too

cf bind-service spring-music postgresql-svc
Binding service postgresql-svc to app spring-music in org redhat.com / space demo as admin...
OK

TIP: Use 'cf restage spring-music' to ensure your env variable changes take effect

But restaging is failing

[snowdrop@h01-116 spring-music]$ cf restage spring-music
This action will cause app downtime.

Restaging app spring-music in org redhat.com / space demo as admin...

Staging app and tracing logs...

Waiting for app to start...
Start unsuccessful

TIP: use 'cf logs spring-music --recent' for more information
FAILED

Questions

As this project uses CfEnv and not anymore SCC , how then the Spring Cloud Connection jar has been added to the classpath ?

gradlew build failed

gradlew build failed on git master with the following output:

[root@centos8 spring-music]# ./gradlew  clean assemble
:clean UP-TO-DATE
:compileJava
FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration ':compileClasspath'.
> Could not resolve org.springframework.cloud:spring-cloud-core:1.2.4.BUILD-SNAPSHOT.
  Required by:
      :spring-music:1.0
   > Could not resolve org.springframework.cloud:spring-cloud-core:1.2.4.BUILD-SNAPSHOT.
      > Unable to load Maven meta-data from http://repo.spring.io/milestone/org/springframework/cloud/spring-cloud-core/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml.
         > Could not GET 'http://repo.spring.io/milestone/org/springframework/cloud/spring-cloud-core/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden
   > Could not resolve org.springframework.cloud:spring-cloud-core:1.2.4.BUILD-SNAPSHOT.
      > Unable to load Maven meta-data from http://repo.spring.io/snapshot/org/springframework/cloud/spring-cloud-core/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml.
         > Could not GET 'http://repo.spring.io/snapshot/org/springframework/cloud/spring-cloud-core/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden
> Could not resolve org.springframework.cloud:spring-cloud-spring-service-connector:1.2.4.BUILD-SNAPSHOT.
  Required by:
      :spring-music:1.0
   > Could not resolve org.springframework.cloud:spring-cloud-spring-service-connector:1.2.4.BUILD-SNAPSHOT.
      > Unable to load Maven meta-data from http://repo.spring.io/milestone/org/springframework/cloud/spring-cloud-spring-service-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml.
         > Could not GET 'http://repo.spring.io/milestone/org/springframework/cloud/spring-cloud-spring-service-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden
   > Could not resolve org.springframework.cloud:spring-cloud-spring-service-connector:1.2.4.BUILD-SNAPSHOT.
      > Unable to load Maven meta-data from http://repo.spring.io/snapshot/org/springframework/cloud/spring-cloud-spring-service-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml.
         > Could not GET 'http://repo.spring.io/snapshot/org/springframework/cloud/spring-cloud-spring-service-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden
> Could not resolve org.springframework.cloud:spring-cloud-cloudfoundry-connector:1.2.4.BUILD-SNAPSHOT.
  Required by:
      :spring-music:1.0
   > Could not resolve org.springframework.cloud:spring-cloud-cloudfoundry-connector:1.2.4.BUILD-SNAPSHOT.
      > Unable to load Maven meta-data from http://repo.spring.io/milestone/org/springframework/cloud/spring-cloud-cloudfoundry-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml.
         > Could not GET 'http://repo.spring.io/milestone/org/springframework/cloud/spring-cloud-cloudfoundry-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden
   > Could not resolve org.springframework.cloud:spring-cloud-cloudfoundry-connector:1.2.4.BUILD-SNAPSHOT.
      > Unable to load Maven meta-data from http://repo.spring.io/snapshot/org/springframework/cloud/spring-cloud-cloudfoundry-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml.
         > Could not GET 'http://repo.spring.io/snapshot/org/springframework/cloud/spring-cloud-cloudfoundry-connector/1.2.4.BUILD-SNAPSHOT/maven-metadata.xml'. Received status code 403 from server: Forbidden

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.


BUILD FAILED

Total time: 5.055 secs

Spring Boot Actuator Health Check is calling MongoDB without it being present

When accessing the Endpoint /actuator/health, there will be a 30 second delay before a response is delivered and an exception is thrown. This is due to the Spring Boot Actuator Health Check trying to connect to MongoDB, though no MongoDB is configured:

org.mongodb.driver.cluster : Cluster description not yet available. Waiting for 30000 ms before timing out
2018-04-10T16:34:48.394+02:00 [APP/PROC/WEB/1] [OUT] 2018-04-10 14:34:48.392 WARN 26 --- [nio-8080-exec-8] o.s.b.a.mongo.MongoHealthIndicator : MongoDB health check failed
2018-04-10T16:34:48.394+02:00 [APP/PROC/WEB/1] [OUT] org.springframework.dao.DataAccessResourceFailureException: Timed out after 30000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: Connection refused (Connection refused)}}]; nested exception is com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: Connection refused (Connection refused)}}]

There is a custom HealthAggregator at https://github.com/cloudfoundry-samples/spring-music/blob/master/src/main/java/org/cloudfoundry/samples/music/SpringMusicHealthAggregator.java that filters depending on active profile, but it is only called after the connection was already failing.

I haven't found a way to dynamically deactivate the MongoDB Health Check, if the MongoDB profile is not active.

App isn't serving up static resources in a CF deploy

2019-08-22T10:39:23.00-0400 [RTR/1] OUT spring-music-wise-civet.app.XXX.XXX - [2019-08-22T14:39:22.984+0000] "GET /webjars/angularjs/1.2.16/angular-resource.js HTTP/1.1" 404 0 165 "https://spring-music-wise-civet.app.XXX.XXX/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1.2 Safari/605.1.15" "127.0.0.1:59232" "10.10.2.8:61050" x_forwarded_for:"2610:148:610:2b04::3, 127.0.0.1" x_forwarded_proto:"https" vcap_request_id:"813bf919-3e6f-497c-6fe9-1b0f89cc0871" response_time:0.024556528 app_id:"48799e7f-be8d-4d6c-876c-2123bd8705cf" app_index:"0" x_b3_traceid:"70fae04b926d8c1c" x_b3_spanid:"70fae04b926d8c1c" x_b3_parentspanid:"-" b3:"70fae04b926d8c1c-70fae04b926d8c1c"
   2019-08-22T10:39:23.00-0400 [RTR/1] OUT

Am I just missing something?

[CELL/0] ERR Failed to make TCP connection to port 8080: connection refusedExit status 4

Hello,
I cannot start Spring-Music app in a simple cf environment deployed with bosh-lite (bosh director 260 + cf-release + Diego-release), The output of "cf logs spring-music --recent" showed:

screenshot

2017-07-14T22:18:34.27+0800 [CELL/0] ERR Failed to make TCP connection to port 8080: connection refusedExit status 4
   2017-07-14T22:18:34.27+0800 [CELL/0] ERR Timed out after 1m0s: health check never passed.
gcps@cf-vbox:~/work/spring-music$ cf apps
Getting apps in org vbox-org / space vbox-dev as admin...
OK

name            requested state   instances   memory   disk   urls
spring-music    started           0/1         1G       1G     spring-music-truthful-colossus.bosh-lite.com
cf-HelloWorld   stopped           0/1         64M      1G     cf-helloworld.bosh-lite.com
cities-hello    stopped           0/1         512M     1G     cities-hello-popeless-peroxyborate.bosh-lite.com
gcps@cf-vbox:~/work/spring-music$ bosh status
Config
             /home/gcps/.bosh_config

Director
  Name       Bosh Lite Director
  URL        https://192.168.50.4:25555
  Version    260.0.0 (00000000)
  User       admin
  UUID       63ddb6a6-d6fe-40e1-b16b-2ff6b2034c79
  CPI        warden_cpi
  dns        disabled
  compiled_package_cache enabled (provider: local)
  snapshots  disabled

Deployment
  Manifest   /home/gcps/work/cf-release/bosh-lite/deployments/cf.yml
gcps@cf-vbox:~/work/spring-music$ bosh deployments
Acting as user 'admin' on 'Bosh Lite Director'

+-----------------+--------------------+-----------------------------------------------------+--------------+
| Name            | Release(s)         | Stemcell(s)                                         | Cloud Config |
+-----------------+--------------------+-----------------------------------------------------+--------------+
| cf-warden       | cf/267+dev.1       | bosh-warden-boshlite-ubuntu-trusty-go_agent/3421.11 | none         |
+-----------------+--------------------+-----------------------------------------------------+--------------+
| cf-warden-diego | cf/267+dev.1       | bosh-warden-boshlite-ubuntu-trusty-go_agent/3421.11 | none         |
|                 | cflinuxfs2/1.137.0 |                                                     |              |
|                 | diego/1.22.0+dev.1 |                                                     |              |
|                 | garden-runc/1.9.0  |                                                     |              |
+-----------------+--------------------+-----------------------------------------------------+--------------+

Deployments total: 2

The app manifest is listed below, is there anything I missed?

gcps@cf-vbox:~/work/spring-music$ cat manifest.yml
---
applications:
- name: spring-music
  memory: 1G
  random-route: true
  path: build/libs/spring-music.jar

Thanks in advance.

Issue while upgrading application from Stack2 to Stack3

Hi all,

We are trying to upgrade Java applications from Stack2 to Stack3 in our cloud foundry environment
The app uses buildpack version 4.16.1 in both stacks for now.
We have a user provided service connected to the app which is AWS MySQL RDS (5.7.mysql_aurora.2.09.2) version.

This app on stack2 works fine without issues while connected to the user provided service.
But when changing the app from stack2 to 3 with same buildpack gives the error as below while connecting to the RDS :

Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
2022-09-02T14:17:26.11+0200 [APP/PROC/WEB/0] OUT at sun.security.ssl.HandshakeContext.(HandshakeContext.java:171) ~[?:1.8.0_312]
2022-09-02T14:17:26.11+0200 [APP/PROC/WEB/0] OUT at sun.security.ssl.ClientHandshakeContext.(ClientHandshakeContext.java:103) ~[?:1.8.0_312

What changes are done for the same buildpack version but in different stacks which is causing this issue?

When I update the user provided service with the jdbc url with useSSL=false it works in stack 3.

What change can be done in the app and where so tht it can connect to the RDS in stack 3 over TLSv1.2?

We tried:ย ย (-Dhttps.protocols=TLSv1.2 -Dhttps.cipherSuites=TLS_RSA_WITH_AES_256_CBC_SHA256 -Ddeployment.security.TLSv1.2=true ) but without success.
Tried with some spring parameters(server.ssl.enabled-protocols=TLSv1.2, server.ssl.enabled=false, server.ssl.enabled=true) but did not work.

Please let us know what could be the cause and solution for the issue?

Theย sample app is spring-musicย which we are using now for testing and trial.

"./gradlew.bat assemble" failed on Windows 7 Enterprise

Output from Git Shell:

FAILURE: Build failed with an exception.

  • Where:
    Build file 'C:\Users\Documents\GitHub\spring-music\build.gradle' line: 24

  • What went wrong:
    A problem occurred evaluating root project 'spring-music'.

    java.lang.UnsupportedClassVersionError: org/cloudfoundry/gradle/CloudFoundryPlugin : Unsupported major.minor version 51.0

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug
    option to get more log output.

BUILD FAILED

Gradle 1.9 tries to download using HTTP

Gradle 1.9 uses HTTP to download dependencies from maven. This seems to be disabled and the JAR files are accessible only via HTTPS.

Replacing Gradle 1.9 with 2.4 solved the issue. Perhaps the Gradle wrapper has to be regenerated as well.

Regarding $ ./gradlew clean assemble

Hi,

i cloned the project by setting http and https proxy on my Ubuntu machine.

When i am executing $ ./gradlew clean assemble i am getting connection timeout error.

can someone please help.

ajinkya@2171f8e3-7191:~/spring-music$ ./gradlew clean assemble
Downloading https://services.gradle.org/distributions/gradle-6.1-bin.zip

Exception in thread "main" java.net.ConnectException: Connection timed out (Connection timed out)

Which CF java app can connect with mysql DB

Hi,

Is there any sample CF java app apart from spring music app which is stack 3 compatible and can be connected with the mysql DB securely ? if so please share the link.

JedisMovedDataException while using redis cluster

We are testing spring music application with Redis cluster through CUPS .For this we used uri field with all required details as redis://user:[email protected]:port. But when we hit app url on browser ,app page is blank and in logs get
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.data.redis.ClusterRedirectException: Redirect: slot 15503 to ip:port.;nested exception is redis.clients.jedis.exceptions.JedisMovedDataException: MOVED 15503 ip:port] with root cause.

We are attempting to connect to a redis cluster which sits behind a loadbalancer and we have been provided uri of a loadbalancer.

Kindly guide us to run this application in such a scenario.

Endpoint /service is not working

Thanks for this great example!

By the way, the endpoint /service has an issue.
The controller response may contain a bean of type StandardUriInfoFactory (that has no properties) and is causing FasterXML Jackson serialization to explose, causing an /error redirection.

I modified the application.yml in order to ignore empty property beans and fix the issue:

spring:
   jackson:
      serialization:
         FAIL_ON_EMPTY_BEANS: false  # StandardUriInfoFactory has no properties
         INDENT_OUTPUT: true

oracle database

Here is how I made it work with my user-provided Oracle DB 12c instance:
-after you clone the project, create a "libs" directory in ~/spring-music, and copy inside the jar of the oracle jdbc driver (for me ojdbc7.jar)
-in build.gradle, add the jar among the dependencies

dependencies {
    compile files('libs/ojdbc7.jar')

-then type gradlew assemble

Error running gradle assemble

I got this issue when trying to run

gradle assemble

This is my gradle -v info


Gradle 3.1

Build time: 2016-09-19 10:53:53 UTC
Revision: 13f38ba699afd86d7cdc4ed8fd7dd3960c0b1f97

Groovy: 2.4.7
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_40 (Oracle Corporation 25.40-b25)
OS: Mac OS X 10.12.1 x86_64

20:33:27.888 [INFO] [org.gradle.api.Project] Configuring agent 20:33:27.888 [DEBUG] [org.gradle.api.Project] Agent: null 20:33:27.889 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 20:33:27.889 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an exception. 20:33:27.889 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 20:33:27.889 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Where: 20:33:27.889 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Build file '/Users/rivera/git/pivotal/cf-samples/spring-music/build.gradle' line: 23 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong: 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] A problem occurred evaluating root project 'spring-music'. 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > Failed to apply plugin [class 'io.spring.gradle.dependencymanagement.DependencyManagementPlugin'] 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > Could not create task of type 'DependencyManagementReportTask'. 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 20:33:27.890 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Exception is: 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'spring-music'. 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:92) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$2.run(DefaultScriptPluginFactory.java:176) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.ProjectScriptTarget.addConfiguration(ProjectScriptTarget.java:77) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:181) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:38) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:25) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34) 20:33:27.891 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:55) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:573) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:125) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:42) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:38) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher$2.run(DefaultGradleLauncher.java:151) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.Factories$1.create(Factories.java:22) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:148) 20:33:27.892 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:33) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:112) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:106) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:92) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.exec.GradleBuildController.run(GradleBuildController.java:66) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:41) 20:33:27.893 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:79) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:51) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:59) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:47) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26) 20:33:27.894 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.util.Swapper.swap(Swapper.java:38) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.895 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.HintGCAfterBuild.execute(HintGCAfterBuild.java:44) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:293) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54) 20:33:27.896 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin [class 'io.spring.gradle.dependencymanagement.DependencyManagementPlugin'] 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginManager.doApply(DefaultPluginManager.java:155) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginManager.addImperativePlugin(DefaultPluginManager.java:67) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginManager.addImperativePlugin(DefaultPluginManager.java:73) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginContainer.apply(DefaultPluginContainer.java:60) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.springframework.boot.gradle.dependencymanagement.DependencyManagementPluginFeatures.apply(DependencyManagementPluginFeatures.java:44) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.springframework.boot.gradle.SpringBootPlugin.apply(SpringBootPlugin.java:47) 20:33:27.897 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.springframework.boot.gradle.SpringBootPlugin.apply(SpringBootPlugin.java:38) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.ImperativeOnlyPluginApplicator.applyImperative(ImperativeOnlyPluginApplicator.java:35) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.RuleBasedPluginApplicator.applyImperative(RuleBasedPluginApplicator.java:43) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginManager.doApply(DefaultPluginManager.java:139) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginManager.apply(DefaultPluginManager.java:112) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyType(DefaultObjectConfigurationAction.java:113) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$200(DefaultObjectConfigurationAction.java:36) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$3.run(DefaultObjectConfigurationAction.java:80) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:136) 20:33:27.898 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.AbstractPluginAware.apply(AbstractPluginAware.java:44) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.ProjectScript.apply(ProjectScript.java:34) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.Script$apply$0.callCurrent(Unknown Source) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at build_33hnugptkizhqgu5szv6dehz0.run(/Users/rivera/git/pivotal/cf-samples/spring-music/build.gradle:23) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:90) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] ... 58 more 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: org.gradle.api.tasks.TaskInstantiationException: Could not create task of type 'DependencyManagementReportTask'. 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.TaskFactory$1.call(TaskFactory.java:123) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.TaskFactory$1.call(TaskFactory.java:118) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.util.GUtil.uncheckedCall(GUtil.java:401) 20:33:27.899 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.AbstractTask.injectIntoNewInstance(AbstractTask.java:176) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.TaskFactory.create(TaskFactory.java:118) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.TaskFactory.createTask(TaskFactory.java:77) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory.createTask(AnnotationProcessingTaskFactory.java:46) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.DependencyAutoWireTaskFactory.createTask(DependencyAutoWireTaskFactory.java:39) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.DefaultTaskContainer.create(DefaultTaskContainer.java:63) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.DefaultTaskContainer.create(DefaultTaskContainer.java:98) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.DefaultTaskContainer.create(DefaultTaskContainer.java:128) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.DefaultTaskContainer_Decorated.create(Unknown Source) 20:33:27.900 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.DefaultTaskContainer_Decorated$create.call(Unknown Source) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at io.spring.gradle.dependencymanagement.DependencyManagementPlugin.apply(DependencyManagementPlugin.groovy:64) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at io.spring.gradle.dependencymanagement.DependencyManagementPlugin.apply(DependencyManagementPlugin.groovy) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.ImperativeOnlyPluginApplicator.applyImperative(ImperativeOnlyPluginApplicator.java:35) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.RuleBasedPluginApplicator.applyImperative(RuleBasedPluginApplicator.java:43) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.plugins.DefaultPluginManager.doApply(DefaultPluginManager.java:139) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] ... 77 more 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: org.gradle.internal.service.UnknownServiceException: No service of type StyledTextOutputFactory available in ProjectScopeServices. 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.service.DefaultServiceRegistry.getServiceProvider(DefaultServiceRegistry.java:436) 20:33:27.901 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.service.DefaultServiceRegistry.doGet(DefaultServiceRegistry.java:426) 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.service.DefaultServiceRegistry.get(DefaultServiceRegistry.java:414) 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.DependencyInjectingInstantiator.convertParameters(DependencyInjectingInstantiator.java:81) 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.DependencyInjectingInstantiator.newInstance(DependencyInjectingInstantiator.java:54) 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.ClassGeneratorBackedInstantiator.newInstance(ClassGeneratorBackedInstantiator.java:36) 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.project.taskfactory.TaskFactory$1.call(TaskFactory.java:121) 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] ... 94 more 20:33:27.902 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 20:33:27.902 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger] 20:33:27.902 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger] BUILD FAILED 20:33:27.903 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger]

BuildpackCompileFailed on application push

While pushing the application to CF I hit an error as "error restarting application: BuildpackCompileFailed". Here are my CF environment details:

+------------------+---------------+-------------+
| Name | Versions | Commit Hash |
+------------------+---------------+-------------+
| cf | 274+dev.1* | b94315ac |
| cflinuxfs2 | 1.156.0* | 3c0b2cb2+ |
| diego | 1.26.0+dev.1 | 482596a7 |
| | 1.26.1+dev.1* | 61737937+ |
| garden-runc | 1.9.3* | 55956f4 |
+------------------+---------------+-------------+

Buiildpack details:
cf buildpacks
Getting buildpacks...

buildpack position enabled locked filename
staticfile_buildpack 1 true false staticfile-buildpack-v1.4.15.zip
java_buildpack 2 true false java-buildpack-v4.5.zip
ruby_buildpack 3 true false ruby-buildpack-v1.6.47.zip
dotnet_core_buildpack 4 true false dotnet-core-buildpack-v1.0.26.zip
nodejs_buildpack 5 true false nodejs-buildpack-v1.6.6.zip
go_buildpack 6 true false go-buildpack-v1.8.8.zip
python_buildpack 7 true false python-buildpack-v1.5.24.zip
php_buildpack 8 true false php-buildpack-v4.3.41.zip
binary_buildpack 9 true false binary-buildpack-v1.0.14.zip

java --version
java 9
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

Here are the logs which does not seem to be providing much information about the failure
cf logs spring-music --recent
Retrieving logs for app spring-music in org dev / space broker as admin...

2017-09-27T22:50:21.03+0530 [API/0] OUT Created app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8
2017-09-27T22:50:21.29+0530 [API/0] OUT Updated app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8 ({"route"=>"cbe09d2f-c70b-4209-b617-81dde1c772ce", :verb=>"add", :relation=>"routes", :related_guid=>"cbe09d2f-c70b-4209-b617-81dde1c772ce"})
2017-09-27T22:50:26.75+0530 [API/0] OUT Uploading bits for app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8
2017-09-27T22:50:33.16+0530 [API/0] OUT Creating build for app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8
2017-09-27T22:50:33.34+0530 [API/0] OUT Updated app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8 ({"state"=>"STARTED"})
2017-09-27T22:55:55.85+0530 [API/0] OUT Updated app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8 ({"name"=>"spring-music", "memory"=>1024, "environment_json"=>"PRIVATE DATA HIDDEN"})
2017-09-27T22:55:57.93+0530 [API/0] OUT Uploading bits for app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8
2017-09-27T22:56:03.50+0530 [API/0] OUT Creating build for app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8
2017-09-27T22:56:03.62+0530 [API/0] OUT Updated app with guid 91d06415-5cef-4ec8-b58e-a82e3fe148c8 ({"state"=>"STARTED"})

Application crash after to be bind to the service

Here are the steps followed to deploy on cloudfoundry the app and error reported

git clone https://github.com/cloudfoundry-samples/spring-music.git && cd spring-music
./gradlew clean assemble

cf push -f manifest.yml

cf create-user-provided-service mysql-db -p '{"uri":"mysql://root:[email protected]:3306/mydatabase"}'\n

cf bind-service spring-music mysql-db

cf restart spring-music
cf logs spring-music --recent

Error

   2018-01-17T12:47:00.64+0100 [APP/PROC/WEB/0] OUT 2018-01-17 11:47:00.639  WARN 13 --- [           main] o.a.tomcat.jdbc.pool.ConnectionPool      : maxIdle is larger than maxActive, setting maxIdle to: 4
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 2018-01-17 11:47:00.925  WARN 13 --- [           main] o.s.b.a.orm.jpa.DatabaseLookup           : Unable to determine jdbc url from datasource
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT org.springframework.jdbc.support.MetaDataAccessException: Could not get Connection for extracting meta data; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:339) ~[spring-jdbc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:366) ~[spring-jdbc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.autoconfigure.orm.jpa.DatabaseLookup.getDatabase(DatabaseLookup.java:72) ~[spring-boot-autoconfigure-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.autoconfigure.orm.jpa.JpaProperties.determineDatabase(JpaProperties.java:139) [spring-boot-autoconfigure-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.jpaVendorAdapter(JpaBaseConfiguration.java:105) [spring-boot-autoconfigure-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration$$EnhancerBySpringCGLIB$$dd1728ba.CGLIB$jpaVendorAdapter$4(<generated>) [spring-boot-autoconfigure-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration$$EnhancerBySpringCGLIB$$dd1728ba$$FastClassBySpringCGLIB$$973fb7e9.invoke(<generated>) [spring-boot-autoconfigure-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) [spring-core-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:358) [spring-context-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration$$EnhancerBySpringCGLIB$$dd1728ba.jpaVendorAdapter(<generated>) [spring-boot-autoconfigure-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:208) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:467) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:208) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:467) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) [spring-beans-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1078) [spring-context-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:857) [spring-context-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) [spring-context-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) [spring-boot-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) [spring-boot-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.4.RELEASE.jar!/:1.5.4.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.cloudfoundry.samples.music.Application.main(Application.java:15) [classes/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [app/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [app/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [app/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51) [app/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80) ~[spring-jdbc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:326) ~[spring-jdbc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	... 67 common frames omitted
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:989) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:341) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2192) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2225) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2024) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:310) ~[tomcat-jdbc-8.5.15.jar!/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:203) ~[tomcat-jdbc-8.5.15.jar!/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:735) ~[tomcat-jdbc-8.5.15.jar!/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:667) ~[tomcat-jdbc-8.5.15.jar!/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:198) ~[tomcat-jdbc-8.5.15.jar!/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:131) ~[tomcat-jdbc-8.5.15.jar!/:na]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111) ~[spring-jdbc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77) ~[spring-jdbc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	... 68 common frames omitted
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT Caused by: java.net.UnknownHostException: dbserver.example.com: Name or service not known
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.net.InetAddress.getAllByName0(InetAddress.java:1276) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.net.InetAddress.getAllByName(InetAddress.java:1192) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at java.net.InetAddress.getAllByName(InetAddress.java:1126) ~[na:1.8.0_141]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:188) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:300) ~[mysql-connector-java-5.1.42.jar!/:5.1.42]
   2018-01-17T12:47:00.92+0100 [APP/PROC/WEB/0] OUT 	... 88 common frames omitted

Question:

What is the db name or name of the db cloud service to be used to configure correctly the spring Boot Spring Music deployed on Cloudfoundry where we are using mysql then - the doc is not clear enough on that point ?

Info icon shows wrong profile information on PWS

Hi,

When I delpoy the spring-music app locally to PCF DEV and attach a MySQL database service, the info card in spring music correctly shows "Profiles: cloud,mysql,mysql-cloud Services: mysql" as expected.

However, when deployed to PWS with a cleardb MySQL instance attached, the info card reads "Profiles: cloud,in-memory Services: " even after a 'cf restage'. However the log and the actuator output shows that MySQL probably is connected as expected..

2016-08-02T13:59:24.77+0100 [APP/0] OUT 2016-08-02 12:59:24.776 INFO 29 --- [ main] .m.c.SpringApplicationContextInitializer : Found serviceInfos: MysqlServiceInfo[mysql://...]
2016-08-02T13:59:24.77+0100 [APP/0] OUT 2016-08-02 12:59:24.776 INFO 29 --- [ main] .m.c.SpringApplicationContextInitializer : Setting profile names: mysql,mysql-cloud

/health: {"status":"UP","database":"MySQL","hello":1}

although...

/appinfo: ["cloud","in-memory"]

I'm new to CF so I haven't figured out why I'm afraid, it just appears unintentionally inconsistent at this moment. Please advise.

Cheers

Ben

Updated to spring-boot but the README is old.

This is an excellent guide. I love this example. I know you recently updated to spring-boot.

How to run must change. Also a word or two on the readme about Angular and all the other gradle stuff used would be great.

My major concern is the How to run has not been updated. It's to the old tomcatRun for the old tomcat plugin.

./gradlew build && java -jar build/libs/spring-music.jar

Error creating bean 'entityManagerFactory' - 'hibernate.dialect' not set

Hi,
I am trying to build this code and work with it but when I run it with,
java -jar -Dspring.profiles.active=mysql build/libs/spring-music.jar
I get the following error

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource 
[org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; 
nested exception is org.hibernate.HibernateException: 
Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set 

Its working fine with In-memory database. It looks that I have to set the hibernate.dialect property somewhere but I am not sure where to do it.
The Application Properties reference file has a lot of options but I am not sure which is relevant to this issue.

So, please let me know what I can do here.

Is autoconfig of db really working?

I have pushed the app to cloud foundry and bound it to a mysql database. However when I start the app and look at the database there is now table available. Am I missing something?

Thanks, Joda

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.