[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序


1. 今天下午修改很早做的一个系统,用的是JDBC-ODBC驱动。

   在我本机Tomcat做测试,发现使用startup.bat启动Tomcat服务后,访问Web服务一切正常。

   但使用Monitor Tomcat 启动Tomcat作为服务例程,则访问Web服务报错:

     [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序。


2. 但ODBC数据源配置时测试也正常。

   我晕。


3. 跟踪排查一下,发现是在 DriverManager.getConnection()的时候报错的。

   可能还是ODBC的问题。

   但不知道是咋回事了。


4. 上网查了N久,一语道破“要用系统DSN”。
 
   关于这点还真没有想到。


5. 一直使用“用户DSN”建立“用户数据源”的。

   DSN:Date Source Name,数据源名称。


6. 在“ODBC数据源管理器”中,设置用于连接数据库的DSN有三种: 用户DSN、系统DSN和文件DSN。

   因为Monitor Tomcat启动的Tomcat服务是作为系统级NT服务例程运行的,这样就无法访问“用户DSN”建立的“用户数据源”。


7. 果然,建立了“系统数据源”就OK了。

   ^_^


                                                                       2007/04/18 于石

posted @ 2007-04-18 18:33  程序员的那些  阅读(52537)  评论(5编辑  收藏  举报