db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kristian Waagan <kristian.waa...@oracle.com>
Subject Re: Derby network server
Date Mon, 02 May 2011 17:53:08 GMT
On 02.05.11 15:13, John English wrote:
> I have a webapp which runs a networked Derby server. I want to be able
> to access it from a separate app. The webapp starts the server from the
> contextInitialized() method of a ServletContextListener:
>
>   server = new NetworkServerControl();
>   server.start(null);
>
> which works fine. However, when I try to open a second connection with
> IJ it gives me this response:
>
>   ij> connect '/foo/db;dataEncryption=true;bootPassword=xyz';
>   ERROR XJ040: Failed to start database '/foo/db', see the next
>   exception for details.
>   ERROR XSDB6: Another instance of Derby may have already booted the
>   database C:foo\db.
>   ij>
>
> Is there something I'm missing here?

Hi John,

Looks to me like you are trying to access, or more specifically boot, 
the database with the embedded driver. This won't work since the network 
server has already booted the database [1].
The only change required should be to add the host name to the 
connection URL (localhost?), i.e. something like 
"jdbc:derby://localhost[:port]/db[;attributes]". You will then get two 
(or more) connections to the database, all using the client driver and 
going through the network server.


Regards,
-- 
Kristian

[1] I'm assuming a connection to the database has already been made 
through the network server. If you connect with the embedded driver 
first, the connection through the network server will fail instead.

>
> TIA,
>
> ------------------------------------------------------------------------
>  John English | My old University of Brighton home page is still here:
>               | http://www.it.brighton.ac.uk/staff/je
> ------------------------------------------------------------------------


Mime
View raw message