我在tomcat中配置了MysqlDataSource,使用这个link。我写了junit测试用例。当我从junit下面调用连接时,它会抛出以下错误。如何在java中连接junit和tomcat?
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
我用下面的代码
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;
}
}
如何从JUnit的调用tomcat的?如何实现这一目标?
你有没有考虑写一个小的shell或Windows批处理脚本调用Tomcat容器?你的JUnit代码可以在'setUp()'中调用这个脚本。 – asgs 2013-03-11 07:43:56
可能是[如何启动和停止一个tomcat容器与java](http://stackoverflow.com/questions/2190300/how-to-start-and-stop -an-Tomcat的容器与-java的) – asgs 2013-03-11 07:52:05