Java tomcat中MysqlDatasource中的NullPointer异常?
我已经从和在tomcat中配置了mysqlDatasource。我遵循了其中规定的步骤。我使用了以下代码行Java tomcat中MysqlDatasource中的NullPointer异常?,java,mysql,eclipse,jdbc,Java,Mysql,Eclipse,Jdbc,我已经从和在tomcat中配置了mysqlDatasource。我遵循了其中规定的步骤。我使用了以下代码行 class DataConnection { private static DataSource dataSource; public DataConnection() { try { Context ctx = new InitialContext(); dataSource = (DataSource)c
class DataConnection {
private static DataSource dataSource;
public DataConnection() {
try {
Context ctx = new InitialContext();
dataSource = (DataSource)ctx.lookup("java:comp/env/jdbc/test");
} catch (NamingException e) {
e.printStackTrace();
}
}
public static Connection getConnection() throws SQLException {
new DataConnection();
Connection con=dataSource.getConnection();
return con;
}
}
但在连接数据库时,我仍然会收到NullPointerException
mysql/lib
文件夹中context.xml
文件并提及连接属性WEB-INF/WEB.xml
中提到
jdbc/db
javax.sql.DataSource注意:我已经创建了context.xml并提到了connection属性。最后手动复制到META-INF/context.xml中 试试
InitialContex
而不是Context
的实例,然后打印某个内容
public DataConnection() {
try {
InitialContext ctx = new InitialContext();
dataSource = (DataSource)ctx.lookup(dataSource name);
} catch (NamingException e) {
e.printStackTrace();
}
}
通过放置断点来检查try块是否已创建。我认为“ava:comp/env/jdbc/test”中的问题是。我已检查数据源值是否为null。添加e.printStackTrace();在catch块中-我猜正在抛出一个异常,但是您没有看到它,因为您的catch块是空的。异常应该告诉您出了什么问题谢谢@geek。我已经更新了错误。我不知道您是否理解这个问题。Context ctx=new InitialContext();它工作正常。当控件进入下一行时,它只返回空值。数据源值为空。有什么异常?印后