我正在开发一个在Tomcat下运行的简单Java应用程序。作为数据库,我选择了MySQL,它通过JDBC Connector与Tomcat服务器通信。根据文档,我从MySQL网站下载了连接器并将其放在Tomcat的目录lib /下;我还在server.xml中添加了以下描述:
<Context docBase="user-accounts" path="/user-accounts" reloadable="true"
source="org.eclipse.jst.jee.server:user-accounts">
<Resource driverClassName="com.mysql.jdbc.Driver"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
initialSize="10"
maxActive="100"
maxIdle="50"
minEvictableIdleTimeMillis="55000"
minIdle="10"
name="jdbc/accountsDB"
password="password"
removeAbandoned="true"
removeAbandonedTimeout="55"
testOnBorrow="true"
timeBetweenEvictionRunsMillis="34000"
type="javax.sql.DataSource"
url="jdbc:mysql://localhost:3306/account_schema"
username="user"
validationInterval="34"
validationQuery="select 1" />
</Context>
但是我收到以下错误:
javax.servlet.ServletException: javax.naming.NameNotFoundException: Name [jdbc/accountsDB] is not bound in this Context. Unable to find [jdbc]
我错过了什么?
答案 0 :(得分:2)
我不确定你是否有拼写错误,但你有:
name="jdbc/accountsDB"
在Context元素中,但您的代码正在寻找jdbc/mydb
。