在维护以前的项目中,一次JNDI的配制让我记忆犹新:
项目情况是,由于增加一个oracle的JNDI,我在META-INF中的context.xml中增加了相应的配制:
<Resource name="jdbc/orclogin" auth="Container" type="javax.sql.DataSource" maxIdle="30" maxWait="10000"
maxActive="100" username="xx" password="xx" driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@xx/xx" />
可是tomcat提示错误是找不到JNDI配制!
google的解决方案都是说驱动什么没有配制好什么的,可是这些我都正确配制了,所以可以保证没有问题!
后来有人说在tomcat/conf/Catalina/localhost目录下提示配制项目名.xml也可以达到这种效果!怀着怀疑与试探的态度打开了我的这个目录下,发现果然
存在项目名.xml这个文件的存在,这是地我明白了,维护以前项目的人应该是在此配制了JNDI,所以我在META-INF目录下怎么改都是不生效的。
与是我在tomcat/conf/Catalina/localhost目录下与在META-INF目录下都做了测试,都可以在添加此配制后,都能成功!
对于有同事建议自己使用连接池来实现,我认为虽然JNDI现在在已经过时,但是对于一些原来的项目,这些配制还是存在的,还做为维护项目的人,尽量使其风格保持一致,便于维护与管理!