在tomcat的conf/context.xml里添加如下:
<Resource
name="jndi/hec"
scope="Shareable"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
url="jdbc:oracle:thin:@localhost:1521:orcl"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="50"
maxWaitMills="10000"
maxTotal="500"
username="noah"
password="noah" />
在tomcat的conf/server.xml里添加如下:
<Resource
name="jndi/hec_global"
scope="Shareable"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
url="jdbc:oracle:thin:@localhost:1521:orcl"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="50"
maxWaitMills="10000"
maxTotal="500"
username="noah"
password="noah" />
分三步
配置webRoot/WEB-INF/aurora.database/datasource.config文件:
<?xml version="1.0" encoding="UTF-8"?>
<dc:data-source-config xmlns:dc="aurora.datasource" className="aurora.datasource.JNDIDataSourceFactory" useTransactionManager="false">
<dc:database-connections>
<dc:database-connection jndiName="jndi/hec" containerName="TOMCAT" />
</dc:database-connections>
</dc:data-source-config>
<resource-ref>
<description>OracleDataSource</description>
<res-ref-name>jndi/hec</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
如noah.xml
<Context path="noah" reloadable="false" crossContext="true" docBase="D:\workspace\noahtest/webRoot" />
分两步
参见局部数据源
部门的1
配置
如noah.xml
<Context path="hec" reloadable="false" crossContext="true" docBase="D:\workspace\noahtest/webRoot">
<ResourceLink name="jndi/hec" global="jndi/hec_global" type="javax.sql.DataSource"/>
</Context>
打开birt报表,如csp_payment_requisition.rptdesign
, 将其中设置帐号密码的部分替换。
<property name="odaDriverClass">oracle.jdbc.OracleDriver</property>
<property name="odaJndiName">java:comp/env/jndi/hec</property>
其中取单一字段的值,如取借款单的单据编号,建议使用row["REQUISITION_NUMBER"]
,不建议使用row._outer["REQUISITION_NUMBER"]
。
图为:使用row._outer["REQUISITION_NUMBER"]方式取值
图为:使用row["REQUISITION_NUMBER"]方式取值
row 和 row._outer 的区别: http://www.eclipsezone.com/eclipse/forums/t74675.html