Marty Pitt
Marty Pitt

Reputation: 29280

Embedded Derby Db in a Spring app on Tomcat

I'm trying to get an embedded Derby db running on a Tomcat/Spring application.

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="org.apache.derby.jdbc.EmbeddedDriver" />
    <property name="url" value="jdbc:derby:pepper" />
    <property name="initialSize" value="5" />
    <property name="maxActive" value="50" />
</bean>

When I run this, I'm getting the following error:

org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Database 'WEB-INF/pepper' not found.)

I've tried the pepper folder at both %webapp_root%/pepper and %webapp_root%/WEB-INF/pepper

Suggestions?

Upvotes: 1

Views: 5180

Answers (2)

Aleksey Otrubennikov
Aleksey Otrubennikov

Reputation: 1181

I guess you need to replace url with jdbc:derby:pepper;create=true

Upvotes: 2

duffymo
duffymo

Reputation: 308763

If you're deploying a web app to Tomcat, I'd recommend setting up a JNDI connection pool and using Spring's JndiObjectFactoryBean:

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/blah"/>
</bean>

Upvotes: 2

Related Questions