SSH2+proxool 出现No suitable driver found for proxool.mysqlProxool
SSH2+proxool 出现No suitable driver found for proxool.mysqlProxool
首先我们要明确使用的是SSH2框架,然而Struts2是基于filter实现的那么在启动proxool的时候就不能够在用servlet来启动了!
于是我们就想到在初始化web容器的时候怎么让他一开始就加载呢?
我们查看tomcat的启动信息:
Starting Servlet Engine: Apache Tomcat/6.0.13
2012-6-10 15:31:41 org.apache.catalina.core.ApplicationContext log
信息: Initializing spring root WebApplicationContext
2012-6-10 15:31:41 org.springframework.web.context.ContextLoader initWebApplicationContext
信息: Root WebApplicationContext: initialization started
最先启动的是spring容器,那么这样我们就可以将proxool的配置写在spring的配置文件中让它最先加载
如下:
- <bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource">
- <property name="alias" value="mysqlProxool"/>
- <property name="driver" value="com.mysql.jdbc.Driver"/>
- <property name="driverUrl" value="jdbc:mysql://localhost:3306/my_blog_01?characterEncoding=UTF-8"/>
- <property name="user" value="root"/>
- <property name="password" value="123456"/>
- <property name="minimumConnectionCount" value="2"/>
- <property name="maximumConnectionCount" value="10"/>
- <property name="prototypeCount" value="5"/>
- <!-- <property name="houseKeepingSleepTime" value="100000"/> -->
- </bean>
这样只需要在sessionFactory加上dataSource的引用即可如下:
- <bean id="sessionFactory"
- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
- <property name="configLocation" value="classpath:Hibernate.cfg.xml"/>
- <span style="color:#ff0000;"><property name="dataSource">
- <ref local="dataSource"/>
- </property>
- </span> </bean>
这样就不在需要配置proxool的servlet启动了,例如:
- <servlet>
- <servlet-name>ServletConfigurator</servlet-name>
- <servlet-class>
- org.logicalcobwebs.proxool.configuration.ServletConfigurator
- </servlet-class>
- <init-param>
- <param-name>xmlFile</param-name>
- <param-value>WEB-INF/classes/proxool.xml</param-value>
- </init-param>
- <load-on-startup>1</load-on-startup>
- </servlet>
- 以上的配置就不在需要在web.xml中进行配置。
- 而在hibernate.cfg.xml中也不在需要proxool的配置只是配置一些hibernate的信息例如:
- <pre class="html" name="code"> <property name="show_sql">true</property>
- <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property></pre><pre class="html" name="code">和一些实体类的映射文件:</pre><pre class="html" name="code"> <mapping resource="com/wuda/hibernate/table/users.hbm.xml"/></pre><pre class="html" name="code">以上就将SSH2+PROXOOL的环境搭建好了。</pre><pre class="html" name="code"> </pre><pre class="html" name="code">但是在搭建好之后如果我们配置<property name="houseKeepingSleepTime" value="100000"/></pre><pre class="html" name="code"> </pre><pre class="html" name="code"> </pre><pre class="html" name="code">又会提示如下错误:</pre><pre class="html" name="code">Invalid property 'houseKeepingSleepTime' of bean class [org.logicalcobwebs.proxool.ProxoolDataSource]: Bean property 'houseKeepingSleepTime' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?</pre><pre class="html" name="code">大概意思是说'houseKeepingSleepTime'属性是不能够写的或者没有合适的setter方法。在他的参数setter和getter的返回结果类型不一致所导致的。</pre><pre class="html" name="code">这个我想也正是他的bug吧。</pre><pre class="html" name="code">那么具体解决如下:</pre><pre class="html" name="code">在proxool-0.9.1.jar(我用的proxool架包)中找到org.logicalcobwebs.proxool.ProxoolDataSource将其源码修改如下:</pre><pre class="html" name="code"> </pre><pre class="html" name="code">源码是:</pre><pre class="java" name="code">1./**
- 2. * @see ConnectionPoolDefinitionIF#getHouseKeepingSleepTime
- 3. */
- 4. public long getHouseKeepingSleepTime() {
- 5. return houseKeepingSleepTime;
- 6. }
- 7.
- 8. /**
- 9. * @see ConnectionPoolDefinitionIF#getHouseKeepingSleepTime
- 10. */
- 11. public void setHouseKeepingSleepTime(int houseKeepingSleepTime) {
- 12. this.houseKeepingSleepTime = houseKeepingSleepTime;
- 13. }
- </pre>
- <pre></pre>
- <pre class="html" name="code"> </pre><pre class="html" name="code">修改为:</pre><pre class="html" name="code"><ol class="dp-j"><li><span><span class="comment">/** </span> </span></li><li><span><span class="comment"> * @see ConnectionPoolDefinitionIF#getHouseKeepingSleepTime </span> </span></li><li><span><span class="comment"> */</span><span> </span></span></li><li><span> </span><span class="keyword">public</span><span> </span><span class="keyword">long</span><span> getHouseKeepingSleepTime() { </span></li><li><span> </span><span class="keyword">return</span><span> houseKeepingSleepTime; </span></li><li><span> } </span></li><li><span> </span></li><li><span> </span><span class="comment">/** </span> </li><li><span><span class="comment"> * @see ConnectionPoolDefinitionIF#getHouseKeepingSleepTime </span> </span></li><li><span><span class="comment"> *此处将int类型改为long类型 </span> </span></li><li><span><span class="comment"> */</span><span> </span></span></li><li><span> </span><span class="keyword">public</span><span> </span><span class="keyword">void</span><span> setHouseKeepingSleepTime(</span><span class="keyword">long</span><span> houseKeepingSleepTime) { </span></li><li><span> </span><span class="keyword">this</span><span>.houseKeepingSleepTime = houseKeepingSleepTime; </span></li><li><span> } </span></li></ol></pre><pre class="html" name="code">这样所有问题都解决!
- </pre><pre class="html" name="code">以上所有步骤都是通过本人在网上查资料,自己手动配置而成。验证通过!</pre><pre class="html" name="code"> </pre><pre class="html" name="code"> </pre><pre class="html" name="code"> </pre>
- <pre></pre>
SSH2+proxool 出现No suitable driver found for proxool.mysqlProxool的更多相关文章
- 使用proxool 连接池:No suitable driver found for proxool
使用proxool连接池时:报错误No suitable driver found for proxool.shide的原因: ①.WEB-INF目录下的lib中没有proxool连接池jar驱动包. ...
- struts2+hibernate+spring简单整合且java.sql.SQLException: No suitable driver 问题解决
最近上j2ee的课,老师要求整合struts2+hibernate+spring,我自己其实早早地有准备弄的,现在都第9个项目了,无奈自己的思路和头绪把自己带坑了,当然也是经验问题,其实只是用myec ...
- Spark on Yarn:java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver://localhost\\db_instance_name:1433;databaseName=db_name
本文只是针对当前特定环境下,出现的问题找不到sqljdbc驱动的案例.具体出现原因,可能是spark版本问题,也可能是集群配置问题. yarn-client方式下: 通过--jars参数指定驱动文件位 ...
- java.sql.SQLException: No suitable driver 问题解决
最近在学习java,用到c3p0数据库连接池,遇到一个很奇怪的现象,用main方法测试是可以正常连接数据库的,但是使用jsp调用代码,就会报如下图的错误! 最下面的java.sql.SQLExcept ...
- java连接mysql :No Suitable Driver Found For Jdbc 解决方法
今天出现编码出现了No suitable driver found for jdbc,又是找遍了网上的资料,基本上都说是以下个问题: 一是:连接URL格式出现了问题(Connection con ...
- No Suitable Driver Found For Jdbc_我的解决方法
转载自:http://www.blogjava.net/w2gavin/articles/217864.html 今天出现编码出现了No suitable driver found for ...
- 出现java.sql.SQLException: No suitable driver的几种解决办法
今天在用C3p0连接MySql数据库 这个时候出现了上面的错误, 一般来说这种错误有3个方向解决 一般都是db的配置的问题 ,一定要小心DB 的配置 八月 19, 2017 8:30:46 下午 co ...
- java.sql.SQLException:No suitable driver found for http://localhost:3306/school
1.错误描述 java.sql.SQLException:No suitable driver found for http://localhost:3306/school 2.错误原因 Class. ...
- 关于mule中使用jdbc时报No Suitable Driver found错误的问题
错误大概信息: Exception in thread "main" org.mule.module.launcher.DeploymentStartException: SQLE ...
随机推荐
- python whl包的安装
1.首先安装PIP. https://pip.pypa.io/en/latest/installing.html#install-pip python get-pip.py 2.设置好环境变量: C: ...
- CERC2016 爵士之旅 Jazz Journey
传送门(洛谷) 题目大意 给定$n$个位置,和一个长为$m$的序列$A$,你需要经过一条直接的边从第$A_i$个位置到第$A_{i+1}$个位置. 每条有向边$(u,v)$分为两种,第一种可以花费$C ...
- poj1325
给出一系列任务,每个任务可以在机器A的某个模式,或者在机器B的某个模式下完成.机器A和B每切换一次模式需要重启一次.问完成这些任务,最少需要重启机器多少次? 把任务看作边 “重启”操作看作点 这道题就 ...
- Spring MVC配置文件的三个常用配置详解
转自:http://www.cnblogs.com/benwu/articles/5162614.html Spring MVC项目中通常会有二个配置文件,sprng-servlet.xml和appl ...
- python发短信功能
http://www.cnblogs.com/martianShu/p/5847289.html
- 使用 DOM对象,控制HTML元素 来制作的一个简单的表格
制作一个表格,显示班级的学生信息. 要求: 1. 鼠标移到不同行上时背景色改为色值为 red,移开鼠标时则恢复为原背景色 white 2. 点击添加按钮,能动态在最后添加一行 3. 点击删除按钮,则删 ...
- CEF源码编译
CEF的构造说明:https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding chromium的源码地址:https://c ...
- gitlab init project
Command line instructions Git global setup git config --global user.name "zxpo" git config ...
- maven 历史版本下载
1.登录http://maven.apache.org/download.cgi 2.拉倒最下面,点击 archives 3.可以看到maven个版本,找自己需要的下载
- CPU 和 Linux 进程
进程与线程 进程应该是Linux中最重要的一个概念.进程运行在CPU上,是所有硬件资源分配的对象.Linux中用一个task_struct的结构来描述进程,描述了进程的各种信息.属性.资源. Linu ...