Search code examples
tomcatcloud-foundryibm-cloud

IBM Bluemix, JavaBuildpack, Deployment issue


I have developed an app that runs on Tomcat and trying to push the app on IBM Bluemix using the java_buildpack but the app is not starting.

The reason as I can see in log is : "java.lang.ClassNotFoundException: com.ibm.db2.jcc.DB2Driver"

The JDBC driver for DB2 needs to be in the lib folder of Tomcat.

As this is the first time I am deploying at Bluemix using JAVABUILDPack, I really don't know how to push the DB2 Jar to the Tomcat/lib folder on Bluemix.

Please help.

Below is the Log :-

Catalina.core.ContainerBase.[Catalina].[localhost].[/] SEVERE  Exce
ption opening database connection
2015-09-06T18:43:41.99+0200 [App/0]      OUT java.sql.SQLException: com.ibm.db2.jcc.DB2Driver
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at org.apache.catalina.realm.JDBCRealm.open(JDBCRealm.java:644)
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at org.apache.catalina.realm.JDBCRealm.startInternal(JDBCRealm.java:717)

2015-09-06T18:43:41.99+0200 [App/0]      OUT    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:617)
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at java.lang.Thread.run(Thread.java:745)
2015-09-06T18:43:41.99+0200 [App/0]      OUT Caused by: java.lang.ClassNotFoundException: com.ibm.db2.jcc.DB2Driver
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
2015-09-06T18:43:41.99+0200 [App/0]      OUT    at java.lang.Class.forName0(Native Method)


Solution

  • Does your app have to run against the java buildpack? Can you try running against the default buildpack in Bluemix, which is the WebSphere Liberty Buildpack.

    cf push <appname>