Java Tomcat上Spring应用程序中的嵌入式Derby Db

Java Tomcat上Spring应用程序中的嵌入式Derby Db,java,spring,tomcat,derby,Java,Spring,Tomcat,Derby,我试图在Tomcat/Spring应用程序上运行嵌入式Derby db <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="org.apache.derby.jdbc.EmbeddedDriver" /> <property name="url" value="jdbc:derby:

我试图在Tomcat/Spring应用程序上运行嵌入式Derby db

<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>

当我运行此命令时,我得到以下错误:

org.apache.commons.dbcp.SQLNestedException: 无法创建 PoolableConnectionFactory(数据库 未找到“WEB-INF/pepper”。)

我已经在
%webapp\u root%/pepper
%webapp\u root%/WEB-INF/pepper
上尝试了
pepper
文件夹


建议?

如果您要将web应用部署到Tomcat,我建议您设置并使用Spring的JNDObjectFactoryBean:

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

如果您要将web应用部署到Tomcat,我建议您设置并使用Spring的JNDObjectFactoryBean:

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


我想您需要将url替换为jdbc:derby:pepper;create=true

我想您需要将url替换为
jdbc:derby:pepper;create=true

是从类路径加载的只读数据库吗?如果不是,数据库文件应该存储在哪里?是从类路径加载的只读数据库吗?如果没有,数据库文件应该存储在哪里?