Copy link to clipboard
Copied
Hello,
We're running CF 11 Standard Edition on Linux and need to connect to an Oracle database. We've done this before on CF 9 using Oracle's JDBC drivers (ojdbc5.jar and ojdbc6.jar). I downloaded the newest JDBC drivers from Oracle, but soon discovered that CF would not start with these drivers installed. When I downgraded to the older version installed on our CF 9 instance, CF 11 worked fine and we could connect to Oracle. I am installing the jar files into /opt/coldfusion11/cfusion/wwwroot/WEB-INF/lib.
These older drivers work fine:
/opt/coldfusion11/jre/bin/java -jar ojdbc5.jar
Oracle 11.2.0.2.0 JDBC 3.0 compiled with JDK5 on Sat_Aug_14_12:16:40_PDT_2010
#Default Connection Properties Resource
#Mon Jul 13 14:14:59 EDT 2015
/opt/coldfusion11/jre/bin/java -jar ojdbc6.jar
Oracle 11.2.0.2.0 JDBC 4.0 compiled with JDK6 on Sat_Aug_14_12:18:34_PDT_2010
#Default Connection Properties Resource
#Mon Jul 13 14:15:04 EDT 2015
These newer drivers do not:
/opt/coldfusion11/jre/bin/java -jar ojdbc5.jar
Oracle 11.2.0.4.0 JDBC 3.0 compiled with JDK5 on Thu_Jul_03_18:16:49_PDT_2014
#Default Connection Properties Resource
#Mon Jul 13 14:15:10 EDT 2015
/opt/coldfusion11/jre/bin/java -jar ojdbc6.jar
Oracle 11.2.0.4.0 JDBC 4.0 compiled with JDK6 on Thu_Jul_03_18:17:32_PDT_2014
#Default Connection Properties Resource
#Mon Jul 13 14:15:13 EDT 2015
Using the newer drivers resulted in CF apparently locking up during startup, with the following errors in the coldfusion-error.log file:
SEVERE: LifecycleException
java.io.IOException: Failed to access resource /WEB-INF/lib/ojdbc5.jar
at org.apache.catalina.loader.WebappLoader.setRepositories(WebappLoader.java:981)
at org.apache.catalina.loader.WebappLoader.startInternal(WebappLoader.java:604)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5332)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: javax.naming.NameNotFoundException: Resource ojdbc5.jar not found
at org.apache.naming.resources.BaseDirContext.lookup(BaseDirContext.java:498)
at org.apache.catalina.loader.WebappLoader.setRepositories(WebappLoader.java:979)
... 10 more
Jul 13, 2015 2:02:14 PM org.apache.catalina.core.ContainerBase startInternal
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:799)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
... 6 more
Caused by: org.apache.catalina.LifecycleException: Failed to start component [WebappLoader[/]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5332)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 6 more
Caused by: org.apache.catalina.LifecycleException: start:
at org.apache.catalina.loader.WebappLoader.startInternal(WebappLoader.java:630)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 8 more
Caused by: java.io.IOException: Failed to access resource /WEB-INF/lib/ojdbc5.jar
at org.apache.catalina.loader.WebappLoader.setRepositories(WebappLoader.java:981)
at org.apache.catalina.loader.WebappLoader.startInternal(WebappLoader.java:604)
... 9 more
Caused by: javax.naming.NameNotFoundException: Resource ojdbc5.jar not found
at org.apache.naming.resources.BaseDirContext.lookup(BaseDirContext.java:498)
at org.apache.catalina.loader.WebappLoader.setRepositories(WebappLoader.java:979)
... 10 more
Jul 13, 2015 2:02:14 PM org.apache.catalina.core.ContainerBase startInternal
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:300)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:731)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at com.adobe.coldfusion.launcher.Launcher.run(Launcher.java:993)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.adobe.coldfusion.bootstrap.Bootstrap.init(Bootstrap.java:90)
at com.adobe.coldfusion.bootstrap.Bootstrap.main(Bootstrap.java:165)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:799)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 6 more
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.adobe.coldfusion.bootstrap.Bootstrap.init(Bootstrap.java:90)
at com.adobe.coldfusion.bootstrap.Bootstrap.main(Bootstrap.java:165)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8009]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at com.adobe.coldfusion.launcher.Launcher.run(Launcher.java:993)
... 6 more
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:731)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 7 more
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 9 more
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:300)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 11 more
Running coldfusion stop resulted in the following on the console:
Stopping ColdFusion 11 server, please wait
Jul 13, 2015 2:03:12 PM com.adobe.coldfusion.launcher.Launcher stopServer
SEVERE: Shutdown Port 8009is not active. Stop the server only after it is started.
And then it just hung until I hit CTRL-C. There was a single java process running for CF which needed to be killed before I could try starting CF again.
Does anyone know why the newest OJDBC drivers cause such a problem with CF 11?
Thanks!
Copy link to clipboard
Copied
See this post here - Re: How do I connect to Oracle using CF11 standard?
Oracle 11g R2 is not supported with CF 11 Standard, its only available on Enterprise
Copy link to clipboard
Copied
It's true that only the Enterprise version comes with Oracle support built in, but there's a workaround. You can place the ojdbc5.jar and ojdbc6.jar files in <CF_ROOT>/cfusion/WEB-INF/lib, then select "other" as the datasource type and use "oracle.jdbc.OracleDriver" as the driver class. This works fine with CF 11 and the JDBC drivers for Oracle 11.2.0.2.0. But when I try to use the JDBC drivers for Oracle 11.2.0.4.0, CF won't even start. That's what I'm curious about. Why won't it start with the newest JDBC drivers when the ones from a few years ago work fine?
Copy link to clipboard
Copied
Could be a number of reason. Changes made in updates that Adobe didn't bother fixing as they don't offer support for it in the standard version.
Did you follow the Coldfusion Lockdown Guide at all?? Have you definitely given the files the correct permissions??
Copy link to clipboard
Copied
Interesting. I just upgraded from Update 3 to Update 5 and now the 11.2.0.4.0 drivers work fine. Guess I should have tried that first. Thanks anyway for your suggestions!