用tomcat,最担心的就是配置jndi的datasource的时候出现问题,随着各大厂商发布自己的jdbc的实现,兼容性的问题也就越来也突出了...
一般我们都是用tomcat自带的dbcp来处理,配置如下:
<resource name="jdbc/myds" auth="container" type="javax.sql.datasource" />
<resourceparams name="jdbc/myds">
<parameter>
<name>driverclassname</name>
<value>oracle.jdbc.driver.oracledriver</value>
</parameter>
<parameter>
<name>drivername</name>
<value>jdbc:oracle:thin:@server:port:sid</value>
</parameter>
<parameter>
<name>user</name>
<value>########</value>
</parameter>
<parameter>
<name>password</name>
<value>########</value>
</parameter>
</resourceparams>
oracle jdbc driver for jdk 1.4 or jdk 1.5
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html
不过这个写法,如果在jbuilderx中,跑tomcat 4.1,加上最新版的 oracle jdbc driver会存在问题,系统抛出的错误为:
javax.naming.namingexception: cannot create resource instance
at org.apache.naming.factory.resourcefactory.getobjectinstance(resourcefactory.java:189)
at javax.naming.spi.namingmanager.getobjectinstance(namingmanager.java:301)
at org.apache.naming.namingcontext.lookup(namingcontext.java:834)
at org.apache.naming.namingcontext.lookup(namingcontext.java:181)
at org.apache.naming.namingcontext.lookup(namingcontext.java:822)
at org.apache.naming.namingcontext.lookup(namingcontext.java:181)
at org.apache.naming.namingcontext.lookup(namingcontext.java:822)
at org.apache.naming.namingcontext.lookup(namingcontext.java:181)
at org.apache.naming.namingcontext.lookup(namingcontext.java:822)
at org.apache.naming.namingcontext.lookup(namingcontext.java:194)
at org.apache.naming.selectorcontext.lookup(selectorcontext.java:183)
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器