db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rick Hillegas <rick.hille...@oracle.com>
Subject Re: Can't Load Embedded Driver
Date Mon, 08 Aug 2011 19:24:09 GMT
Hi Roy,

Thanks for including the code snippet. As Raymond points out, you are 
not loading the driver explicitly. This should not be necessary if you 
are using Java 6 or 7. However, driver autoloading does not happen in 
Java 5 and earlier versions of Java. What version of Java are you using?

Thanks,
-Rick

On 8/8/11 11:55 AM, Raymond Kroeker wrote:
> Hi Roy,
>
> The fqcn, is the fully qualified class name of the driver.  So in your
> code you're using the driver manager to grab a connection; however I
> don't see a reference to loading the driver:
> http://db.apache.org/derby/papers/DerbyTut/embedded_intro.html#embedded_driver
>
> Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
>
> Raymond
>
> On Mon, Aug 8, 2011 at 11:47,<Roy.Minet@comcast.net>  wrote:
>> I do not know what an "fqcn" is.  I am running the latest Derby release,
>> 10.8.1.2.  The code pasted in below works great in the dev environment
>> (IntelliJ Idea), but the same code packaged in a jar cannot find the driver
>> with CLASSPATH set correctly.
>>
>>     public static Connection getConnection()
>>     {
>>        Connection c = null;
>>        try
>>        {             // The connectionURL
>> is "jdbc:derby:EMDatabase;create=true"
>>           c = DriverManager.getConnection(connectionURL);
>>           c.setAutoCommit(false);
>>        }
>>        catch (Throwable e)
>>        {
>>           log(3, "Unable to connect to " + dbName + ":  " + e.getMessage());
>>           stopDBMS();
>>           System.exit(3);
>>        }
>>        return c;
>>     }
>>
>>
>>
>> ________________________________
>>
>> From: "Raymond Kroeker"<raykroeker@gmail.com>
>>
>> To: "Derby Discussion"<derby-user@db.apache.org>
>> Sent: Monday, August 8, 2011 10:08:11 AM
>> Subject: Re: Can't Load Embedded Driver
>>
>> Can you try specifying the driver as a fqcn? If that doesn't solve the issue
>> please paste relevant code around how you load the driver and obtain a
>> connection.
>>
>> Raymond
>>
>> On Aug 8, 2011 6:55 AM,<Roy.Minet@comcast.net>  wrote:
>>>
>>> Rick,
>>>
>>>
>>>
>>> Thank you very much for offering your help.  Apparently my CLASSPATH is
>>> good.  I typed in "java org.apache.derby.jdbc.EmbeddedDriver" and did indeed
>>> get exactly the expected "Exception in thread "main"
>>> java.lang.NoSuchMethodError: main" error message.  What else could be
>>> causing  my problem?
>>>
>>>
>>>
>>> Roy
>>>
>>>
>>>
>>>
>>>
>>> ----- Original Message -----
>>>
>>>
>>> From: "Rick Hillegas"<rick.hillegas@oracle.com>
>>> To: "Derby Discussion"<derby-user@db.apache.org>
>>> Sent: Monday, August 8, 2011 9:00:58 AM
>>> Subject: Re: Can't Load Embedded Driver
>>>
>>> On 8/7/11 9:54 AM, Roy.Minet@comcast.net wrote:
>>>> I have been happily using Derby for two years within IntelliJ Idea,
>>>> but have now hit a wall trying to deploy the application I developed.
>>>> I have tried setting the path to derby.jar on the command line and/or
>>>> in the CLASSPATH environment variable to no avail.  The embedded
>>>> driver doesn't load; the error message is, "No suitable driver found
>>>> for jdbc:derby:EMDatabase;create=true".  I'm under Windows XP Pro.
>>>> Any help would be appreciated.
>>>>
>>>> Roy Minet
>>>>
>>>>
>>> Hi Roy,
>>>
>>> This is almost always a CLASSPATH problem. With the same CLASSPATH, try
>>> the following experiment:
>>>
>>> java org.apache.derby.jdbc.EmbeddedDriver
>>>
>>> If the CLASSPATH is good, you should see this error:
>>>
>>> Exception in thread "main" java.lang.NoSuchMethodError: main
>>>
>>> Hope this helps,
>>> -Rick
>
>


Mime
View raw message