今天用皕杰报表的时候,新配了一个mysql数据源,然后开始启动tomcat,出现了闪退现象。一般出现闪退都是环境变量没有配好,但我知道我的电脑里环境变量是没问题的,问题肯定出在刚才配置的数据源上,于是打开server.xml和report-config.xml,仔细看了一下,没发现问题。怎么办呢?
当然要看tomcat的日志,应该有所提示。于是打开了catalinna.log文件,仔细查找有错误的地方。看到了如下错误:
07-May-2022 14:55:14.859 严重 [main] org.apache.tomcat.util.digester.Digester.fatalError 分析第[184]行第[9]列处的致命错误
org.xml.sax.SAXParseException;systemId: file:/D:/BiosPlatformVersionfile/BiosPlatform4Win-V6.1-B20220506/BIOS%20Server/conf/server.xml; lineNumber: 184; columnNumber: 9; 元素类型 “Context” 必须由匹配的结束标记 “” 终止。
看明白了吧,原来在server.xml里配置连接池的时候丢掉了,在配置文件里加上后,再次启动一切ok了。
这说明了什么问题呢?当然是不够细心,随意丢掉了程序的结束标记,tomcat当然就不能正常启动了。不能正常启动也不要慌,到tomcat日志里去发现问题,解决了就好。
下面给出的是皕杰报表配置mysql数据源的代码。
server.xml中配置数据库连接池代码如下:
<Context path=“/iface” docBase=“iface” reloadable=“false”>
<Resource name=“MYSQL” auth=“Container” type=“javax.sql.DataSource”
username=“root”
password=“123”
driverClassName=“com.mysql.jdbc.Driver”
url=“jdbc:mysql://127.0.0.1:3306/test1”
maxActive=“50”
maxIdle=“5”
maxWait=“3000” />
</Context>
127.0.0.1代表本机ip,不是本机就改成你的数据库服务器的ip。
report-config.xml中配置数据源代码如下:
<dataSource>
<Name>mysql</Name>
<JNDIPrefix>java:comp/env/</JNDIPrefix>
<JNDIName>MYSQL</JNDIName>
<DBType>mysql</DBType>
<DBEncode>gbk</DBEncode>
<SQLDecode>false</SQLDecode>
<Default>false</Default>
<SupportMVCC>true</SupportMVCC>
</dataSource>
当然还有一点,不要忘了把数据库的jdbc驱动放到tomcat的lib下。
05-04
786
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交