This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
For starters, Oracle and your driver are the culprit, not JDBC. This is one of the reasons I strongly recommend against Oracle-specific implementations of JDBC. You should be using interface classes like Statement/Callable, and not relying on Oracle classes lest you never want to be able to port your code to a new database.
As for the error, since you're getting a ClassCastException exception its most likely your class path. Are you 100% its not failing on this line? The exception makes more sense if this is the bad line: