Thanks Jim -

That's what I needed.  Here's the working code:

var driverClass = Java.type("org.apache.derby.jdbc.ClientDriver");
var driver = new driverClass();
var conn = driver.connect("jdbc:derby://localhost:1527/sample;user=app;password=app", null);
var stmt = conn.createStatement();
var rs = stmt.executeQuery("SELECT NAME FROM Customer");
while (rs.next()) {
    print(rs.getString(1));
}

However, this code does not work:

var driverManager = Java.type("java.sql.DriverManager");
var conn = driverManager.getConnection("jdbc:derby://localhost:1527/sample;user=app;password=app");

A SQLException is thrown: No suitable driver found for jdbc:derby://localhost:1527/sample;user=app;password=app

I may have missed this, but I guess that static initialization blocks are not executed? DriverManager would have executed
this during initialization:

    static {
        loadInitialDrivers();
        println("JDBC DriverManager initialized");
    }

Thanks again,

Tom


On 1/31/2014 8:20 PM, Jim Laskey (Oracle) wrote:
Since I don't have the jar handy, I'm just guessing, but why wouldn't you just;

jjs> var driverClass = Java.type("org.apache.derby.jdbc.ClientDriver");

-- Jim

On Jan 31, 2014, at 7:43 PM, Tom McGinn <[email protected]> wrote:

Hello -

I am trying to create a JS file that illustrates using Java classes mixed with 
JS.

I am trying to connect to the sample JavaDB instance, but am not able to load 
the driver class.

jjs -cp /home/tmcginn/jdk1.8.0/db/lib/derbyclient.jar
jjs> var driver = "org.apache.derby.jdbc.ClientDriver";
jjs> Java.type("java.lang.Class").forName(driver);
java.lang.RuntimeException: java.lang.ClassNotFoundException: 
org.apache.derby.jdbc.ClientDriver

I think I am missing something obvious....

I am running this on Oracle Linux 6 u3 on an OVM.

Thanks,

Tom

--


Tom McGinn | Java Curriculum Developer
OracleServer Technologies Curriculum Development
Phone: +1.781.442.0621
Mail: [email protected]
Blog: Java Training Beat <https://blogs.oracle.com/javatraining/>


--


Tom McGinn | Java Curriculum Developer
OracleServer Technologies Curriculum Development
Phone: +1.781.442.0621
Mail: [email protected]
Blog: Java Training Beat <https://blogs.oracle.com/javatraining/>

Reply via email to