问题描述
Tomcat的数据源配置各个版本(4.*5.*5.5.*,这里不考虑低于4.0的版本)都不同,总的来说tomcat4.*版本直接在server.xml中进行配置,tomcat5.*及tomcat5.5.*则建议把配置信息独立放在%Tomcat_Home%confCatalinalocalhostyourapp.xml文件的<Context>之中,而不是直接在server.xml中进行配置,最后都需要在Web应用的文件夹的WEB-INFweb.xml中加入引用下面就各个版本进行配置:一:Tomcat4.*第一步:用(你习惯的)文本编辑器打开%Tomcat_Home%confserver.xml并查找</Host>标记,找到后在<Host></Host>中加入(注意,为了不出错,请直接把光标定位在</Host>,然后复制粘贴以下部分)<Contextpath=”/report”docBase=”D:runqianBaseTest-Tomcat41show”debug=”0″privileged=”true”><Resourcename=”jdbc/dbsource”auth=”Container”type=”javax.sql.DataSource”/><ResourceParamsname=”jdbc/dbsource”><parameter><name>username</name><value>sa</value></parameter><parameter><name>password</name><value>lgl</value></parameter><parameter><name>driverClassName</name><value>com.newatlanta.jturbo.driver.Driver</value></parameter><parameter><name>url</name><value>jdbc:JTurbo://localhost/tempdb</value></parameter></ResourceParams></Context>下面就各个部分进行说明,您好根据你的应用进行修改.<Contextpath=”/report”docBase=”D:runqianBaseTest-Tomcat41show”debug=”0″privileged=”true”>中,path属性为用户的虚拟路径,如果为空的话应用请求路径为根路径.比如说这里的请求路径为http://localhost:8080/report/docBase属性为应用在计算机上所存储的物理位置,可以为绝对路径,也可以是相对%Tomcat_Home%webapps的路径.本人建议填写绝对路径.Resource标签中,name属性与esourceParams中的name属性为JNDI名,这里一定要两个地方根相同,比如可能你会写上jdbc/dbsource等.其它是一些参数的设置,如数据库用户名username,数据密码password,驱动名driverClassName及数据库所在的位置定位url等,这些可以根据你具体的环境来进行配置.第二步:打开润乾报表应用的web.xml,找到<param-name>dataSource</param-name>,把<param-value>sqlsvr,sqlsvr,iso8859-1;</param-value>设置成形如数据源名,数据库类型,编码类型;….(这里配置多个数据源的话用分号分开)第三步:很简单,把与server.xml中配置相对应的数据库驱动拷到%Tomcat_Home%commonlib下,这个步骤大家可能不容易重视,一般都会出现形如”org.apache.jasper.JasperException:单元格A2中有错误:表达式ds1.select(NAME,false)中数据集未产生,可能因为未连接数据库”的错误用这个数据源测试程序进行测试,可能会出现形如”javax.servlet.ServletException:CannotloadJDBCdriverclass…”的错误.现把数据源测试程序源码附上:<%@pagecontentType=”text/html;charset=gb2312″%><%@pageimport=”javax.sql.*,javax.naming.*,java.sql.*”%><%StringlookupName=“java:comp/env/jdbc/dbsource”;//这里的jdbc/dbsource根据您的配置进行相应修改Contextctx=newInitialContext();Connectioncon;DataSourceds;System.out.println(“开始查找数据源exercise”);Objectobj=ctx.lookup(lookupName);ds=(DataSource)obj;con=ds.getConnection();if(con!=null){out.println(”exercise配置成功:”+obj.getClass().getName());out.println(”exercise配置成功:”+lookupName);}%>二:Tomcat5.*Tomcat5.*与以前版本差不多,区别是把配置信息独立放在%Tomcat_Home%confCatalinalocalhostyourapp.xml文件,而不是在server.xml中配置了,最简单的办法是把Tomcat4.*中的第一步代码拷到%Tomcat_Home%confCatalinalocalhostyourapp.xml就可以了其它与Tomcat4.*同.三:Tomcat5.5.*这个版本与Tomcat5.*一样,把配置信息独立放在%Tomcat_Home%confCatalinalocalhostyourapp.xml文件中,但这个文件中的内容有了很大的变化以下是我配置的一个<Contextpath=”/input”docBase=”D:demoinput”debug=”0″privileged=”true”><Resourcename=”input”auth=”Container”type=”javax.sql.DataSource”maxActive=”100″maxIdle=”30″maxWait=”10000″username=”sa”password=””driverClassName=”org.hsqldb.jdbcDriver”url=”jdbc:hsqldb:hsql://localhost:9009/demodb”/></Context四:Tomcat6.0这个版本的数据源配置与Tmcat5.5.*的完全一样,在此不再赘述.引自:原文链接:相关文章EXCEL大数据量导出的解决方案java技术:在Swing中展现报表其他相关内容:润乾商业智能解决方案;商业智能BI联盟;Java报表
解决方案
解决方案二:
该回复于2009-06-19 15:05:36被版主删除