Spring Hibernate c3p0 JPA implementation throwing a no driver found error -
i trying integration hibernate spring c3p0 , jpa production ready state. maintain on getting error
2013-02-19t07:55:24+00:00 app[web.1]: 07:55:24,556 debug basicresourcepool:1644 - trace com.mchange.v2.resourcepool.basicresourcepool@120fe256 [managed: 0, unused: 0, excluded: 0] 2013-02-19t07:55:24+00:00 app[web.1]: 07:55:24,559 debug basicresourcepool:1831 - exception occurred while acquiring poolable resource. retry. 2013-02-19t07:55:24+00:00 app[web.1]: java.sql.sqlexception: no suitable driver 2013-02-19t07:55:24+00:00 app[web.1]: @ java.sql.drivermanager.getdriver(drivermanager.java:279) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.drivermanagerdatasource.driver(drivermanagerdatasource.java:224) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.drivermanagerdatasource.getconnection(drivermanagerdatasource.java:120) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.wrapperconnectionpooldatasource.getpooledconnection(wrapperconnectionpooldatasource.java:143) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.wrapperconnectionpooldatasource.getpooledconnection(wrapperconnectionpooldatasource.java:132) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.impl.c3p0pooledconnectionpool$1pooledconnectionresourcepoolmanager.acquireresource(c3p0pooledconnectionpool.java:137) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.resourcepool.basicresourcepool.doacquire(basicresourcepool.java:1014) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.resourcepool.basicresourcepool.access$800(basicresourcepool.java:32) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.resourcepool.basicresourcepool$acquiretask.run(basicresourcepool.java:1810) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.async.threadpoolasynchronousrunner$poolthread.run(threadpoolasynchronousrunner.java:547) 2013-02-19t07:55:24+00:00 app[web.1]: 07:55:24,562 warn basicresourcepool:1841 - com.mchange.v2.resourcepool.basicresourcepool$acquiretask@60e1ccdf -- acquisition effort failed!!! clearing pending acquires. while trying acquire needed new resource, failed succeed more maximum number of allowed acquisition attempts (1). lastly acquisition effort exception: 2013-02-19t07:55:24+00:00 app[web.1]: java.sql.sqlexception: no suitable driver 2013-02-19t07:55:24+00:00 app[web.1]: @ java.sql.drivermanager.getdriver(drivermanager.java:279) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.drivermanagerdatasource.driver(drivermanagerdatasource.java:224) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.drivermanagerdatasource.getconnection(drivermanagerdatasource.java:120) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.wrapperconnectionpooldatasource.getpooledconnection(wrapperconnectionpooldatasource.java:143) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.wrapperconnectionpooldatasource.getpooledconnection(wrapperconnectionpooldatasource.java:132) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.c3p0.impl.c3p0pooledconnectionpool$1pooledconnectionresourcepoolmanager.acquireresource(c3p0pooledconnectionpool.java:137) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.resourcepool.basicresourcepool.doacquire(basicresourcepool.java:1014) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.resourcepool.basicresourcepool.access$800(basicresourcepool.java:32) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.resourcepool.basicresourcepool$acquiretask.run(basicresourcepool.java:1810) 2013-02-19t07:55:24+00:00 app[web.1]: @ com.mchange.v2.async.threadpoolasynchronousrunner$poolthread.run(threadpoolasynchronousrunner.java:547) 2013-02-19t07:55:24+00:00 app[web.1]: 07:55:24,559 debug basicresourcepool:1831 - exception occurred while acquiring poolable resource. retry. 2013-02-19t07:55:24+00:00 app[web.1]: java.sql.sqlexception: no suitable driver here pom.xml
<?xml version="1.0" encoding="utf-8"?> <project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelversion>4.0.0</modelversion> <groupid>com.example</groupid> <artifactid>reservosity</artifactid> <packaging>war</packaging> <version>0.0.1-snapshot</version> <properties> <org.springframework.version>3.1.1.release</org.springframework.version> <project.build.sourceencoding>utf-8</project.build.sourceencoding> </properties> <dependencies> <dependency> <groupid>javax.servlet</groupid> <artifactid>javax.servlet-api</artifactid> <version>3.0.1</version> <scope>provided</scope> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-webmvc</artifactid> <version>${org.springframework.version}</version> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-orm</artifactid> <version>${org.springframework.version}</version> </dependency> <dependency> <groupid>taglibs</groupid> <artifactid>standard</artifactid> <version>1.1.2</version> </dependency> <dependency> <groupid>javax.servlet</groupid> <artifactid>jstl</artifactid> <version>1.2</version> </dependency> <dependency> <groupid>org.hsqldb</groupid> <artifactid>hsqldb</artifactid> <version>2.2.8</version> </dependency> <dependency> <groupid>mysql</groupid> <artifactid>mysql-connector-java</artifactid> <version>5.1.20</version> </dependency> <dependency> <groupid>commons-dbcp</groupid> <artifactid>commons-dbcp</artifactid> <version>1.4</version> </dependency> <dependency> <groupid>com.github.jsimone</groupid> <artifactid>webapp-runner</artifactid> <version>7.0.27.1</version> <scope>provided</scope> </dependency> <!-- tiles dependency --> <dependency> <groupid>org.apache.tiles</groupid> <artifactid>tiles-core</artifactid> <version>2.2.1</version> </dependency> <dependency> <groupid>org.apache.tiles</groupid> <artifactid>tiles-jsp</artifactid> <version>2.2.1</version> </dependency> <dependency> <groupid>org.apache.tiles</groupid> <artifactid>tiles-api</artifactid> <version>2.2.1</version> </dependency> <dependency> <groupid>org.apache.tiles</groupid> <artifactid>tiles-servlet</artifactid> <version>2.2.1</version> </dependency> <dependency> <groupid>org.apache.tiles</groupid> <artifactid>tiles-template</artifactid> <version>2.2.1</version> </dependency> <!-- security --> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-core</artifactid> <version>3.1.3.release</version> </dependency> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-web</artifactid> <version>3.1.3.release</version> </dependency> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-config</artifactid> <version>3.1.3.release</version> </dependency> <dependency> <groupid>javax.validation</groupid> <artifactid>validation-api</artifactid> <version>1.0.0.ga</version> </dependency> <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate-entitymanager</artifactid> <version>4.1.4.final</version> </dependency> <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate-validator</artifactid> <version>4.3.1.final</version> </dependency> <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate-c3p0</artifactid> <version>4.1.4.final</version> </dependency> <dependency> <groupid>joda-time</groupid> <artifactid>joda-time</artifactid> <version>2.1</version> </dependency> <dependency> <groupid>org.codehaus.jackson</groupid> <artifactid>jackson-mapper-asl</artifactid> <version>1.9.11</version> </dependency> <!-- junit api --> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>4.8.1</version> <scope>test</scope> </dependency> <dependency> <groupid>org.mockito</groupid> <artifactid>mockito-all</artifactid> <version>1.9.5</version> </dependency> <!-- javamail api --> <dependency> <groupid>javamail</groupid> <artifactid>javamail</artifactid> <version>1.3.3</version> </dependency> <!-- java activation --> <dependency> <groupid>javax.activation</groupid> <artifactid>activation</artifactid> <version>1.1.1</version> </dependency> <!-- javamail extension --> <dependency> <groupid>javax.mail</groupid> <artifactid>mail</artifactid> <version>1.4.6-rc1</version> </dependency> <!-- log4j --> <dependency> <groupid>log4j</groupid> <artifactid>log4j</artifactid> <version>1.2.17</version> </dependency> <dependency> <groupid>org.slf4j</groupid> <artifactid>slf4j-log4j12</artifactid> <version>1.5.6</version> </dependency> <!-- newrelic-agent.jar dependency. --> <dependency> <groupid>com.newrelic.agent.java</groupid> <artifactid>newrelic-agent</artifactid> <version>2.12.0</version> <scope>provided</scope> </dependency> <!-- newrelic-api.jar dependency. --> <dependency> <groupid>com.newrelic.agent.java</groupid> <artifactid>newrelic-api</artifactid> <version>2.12.0</version> <scope>compile</scope> </dependency> <!-- newrelic-java.zip dependency. --> <dependency> <groupid>com.newrelic.agent.java</groupid> <artifactid>newrelic-java</artifactid> <version>2.12.0</version> <scope>provided</scope> <type>zip</type> </dependency> <dependency> <groupid>aspectj</groupid> <artifactid>aspectjweaver</artifactid> <version>1.5.4</version> </dependency> </dependencies> <build> <plugins> <plugin> <artifactid>maven-compiler-plugin</artifactid> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <artifactid>maven-war-plugin</artifactid> <version>2.2</version> </plugin> <plugin> <groupid>org.apache.maven.plugins</groupid> <artifactid>maven-dependency-plugin</artifactid> <version>2.6</version> <executions> <execution> <id>unpack-zip</id> <phase>package</phase> <goals> <goal>unpack-dependencies</goal> </goals> <configuration> <artifactitems> <artifactitem> <groupid>com.newrelic.agent.java</groupid> <artifactid>newrelic-java</artifactid> <version>theversion</version> <type>zip</type> <overwrite>true</overwrite> <outputdirectory>target</outputdirectory> <destfilename>newrelic</destfilename> </artifactitem> </artifactitems> <outputdirectory>/newrelic</outputdirectory> </configuration> </execution> <execution> <phase>package</phase> <goals> <goal>copy</goal> </goals> <configuration> <artifactitems> <artifactitem> <groupid>com.github.jsimone</groupid> <artifactid>webapp-runner</artifactid> <version>7.0.27.1</version> <destfilename>webapp-runner.jar</destfilename> </artifactitem> </artifactitems> </configuration> </execution> </executions> </plugin> </plugins> </build> applicationcontext.xml
<?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <context:annotation-config /> <context:component-scan base-package="com.muuves.reservosity" /> <mvc:annotation-driven /> <bean id="tilesconfigurer" class="org.springframework.web.servlet.view.tiles2.tilesconfigurer"> <property name="definitions"> <list> <value>/web-inf/tiles/tiles.xml</value> </list> </property> </bean> <bean class="org.springframework.web.servlet.view.tiles2.tilesviewresolver"> <property name="viewclass" value="org.springframework.web.servlet.view.tiles2.tilesview" /> </bean> <tx:annotation-driven /> <bean id="transactionmanager" class="org.springframework.orm.jpa.jpatransactionmanager"> <property name="entitymanagerfactory" ref="entitymanagerfactory" /> <property name="datasource" ref="datasource" /> </bean> <beans profile="default"> <bean class="java.net.uri" id="dburl"> <constructor-arg value="http://localhost:3306/reservosity" /> </bean> <bean id="datasource" class="org.apache.commons.dbcp.basicdatasource"> <property name="url" value="jdbc:mysql://localhost:3306/reservosity" /> <property name="username" value="root" /> <property name="password" value="toor" /> </bean> <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localcontainerentitymanagerfactorybean"> <property name="datasource" ref="datasource" /> <property name="jpavendoradapter"> <bean class="org.springframework.orm.jpa.vendor.hibernatejpavendoradapter" /> </property> <property name="jpaproperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.mysqldialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.hbm2ddl.auto">verify</prop> <prop key="hibernate.current_session_context_class">thread</prop> </props> </property> </bean> </beans> <beans profile="prod"> <bean class="java.net.uri" id="dburl"> <constructor-arg value="#{systemenvironment['cleardb_database_url']}" /> </bean> <bean id="datasource" class="com.mchange.v2.c3p0.combopooleddatasource" destroy-method="close"> <property name="driverclass" value="com.mysql.jdbc.driver" /> <property name="jdbcurl" value="#{ 'jdbc:mysql://' + @dburl.gethost() + @dburl.getpath() }" /> <property name="user" value="#{ @dburl.getuserinfo().split(':')[0] }" /> <property name="password" value="#{ @dburl.getuserinfo().split(':')[1] }" /> </bean> <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localcontainerentitymanagerfactorybean"> <property name="datasource" ref="datasource" /> <property name="jpavendoradapter"> <bean class="org.springframework.orm.jpa.vendor.hibernatejpavendoradapter" /> </property> <property name="jpaproperties"> <props> <prop key="hibernate.connection.provider_class">org.hibernate.service.jdbc.connections.internal.c3p0connectionprovider</prop> <prop key="hibernate.dialect">org.hibernate.dialect.mysqldialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.hbm2ddl.auto">verify</prop> <prop key="hibernate.current_session_context_class">thread</prop> <prop key="hibernate.c3p0.acquire_increment">1</prop> <prop key="hibernate.c3p0.min_size">5</prop> <prop key="hibernate.c3p0.max_size">20</prop> <prop key="hibernate.c3p0.timeout">5000</prop> <prop key="hibernate.c3p0.max_statements">100</prop> <prop key="hibernate.c3p0.idle_test_period">3000</prop> <prop key="hibernate.c3p0.testconnectiononcheckout">true</prop> <prop key="hibernate.c3p0.acquireretryattempts">1</prop> </props> </property> </bean> </beans> security-context.xml
<?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:security="http://www.springframework.org/schema/security" xmlns:context="http://www.springframework.org/schema/context" xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <!-- <security:http auto-config='true'> --> <security:http auto-config='true' use-expressions='true' once-per-request='false'> <security:intercept-url pattern="/welcome*" access="is_authenticated_anonymously" /> <security:intercept-url pattern="/secure/**" access="role_user" requires-channel="https" /> <security:intercept-url pattern="/**" access="hasrole('role_user')" requires-channel="any" /> <security:intercept-url pattern="favicon.ico" access="permitall" /> <!-- <security:session-management session-fixation-protection="migratesession"/> --> <!-- create sure not sending login/password in plain text on open channel. utilize ssl (https) instead --> <!-- <security:intercept-url pattern="/login" requires-channel="https"/> <security:intercept-url pattern="/j_spring_security_check" requires-channel="https"/> <security:intercept-url pattern="/**" requires-channel="http"/> form login <security:form-login login-processing-url="/j_spring_security_check" login-page="/**" authentication-failure-url="/login?login_error=true" /> <security:logout /> --> <!-- logout --> <!-- <security:logout logout-url="/j_spring_security_logout"/> --> <!-- remember me --> <!-- <security:remember-me key="remembermekey" user-service-ref="companyserviceimpl"/> --> </security:http> <security:authentication-manager> <security:authentication-provider user-service-ref="authenticationserviceimpl" /> </security:authentication-manager> meta-inf/persistance.xml
<persistence-unit name="datasource" transaction-type="resource_local"> </persistence-unit> i appreciate anyones help thanks!
changed next fixed yeeeeeeeeeeeeeeeeeeeees
persistence.xml
<?xml version="1.0" encoding="utf-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version="2.0"> <persistence-unit name="datasource"> <provider>org.hibernate.ejb.hibernatepersistence</provider> <properties> <property key="hibernate.connection.provider_class">org.hibernate.service.jdbc.connections.internal.c3p0connectionprovider</property> <property key="hibernate.dialect">org.hibernate.dialect.mysqldialect</property> <property key="hibernate.show_sql">true</property> <property key="hibernate.hbm2ddl.auto">verify</property> <property key="hibernate.current_session_context_class">thread</property> <property key="hibernate.c3p0.acquire_increment">1</property> <property key="hibernate.c3p0.min_size">5</property> <property key="hibernate.c3p0.max_size">20</property> <property key="hibernate.c3p0.timeout">5000</property> <property key="hibernate.c3p0.max_statements">100</property> <property key="hibernate.c3p0.idle_test_period">3000</property> <property key="hibernate.c3p0.testconnectiononcheckout">true</property> <property key="hibernate.c3p0.acquireretryattempts">1</property> </properties> </persistence-unit> applicationcontext.xml
<bean id="datasource" class="org.apache.commons.dbcp.basicdatasource" destroy-method="close"> <property name="driverclassname" value="com.mysql.jdbc.driver"/> <property name="url" value="#{ 'jdbc:mysql://' + @dburl.gethost() + @dburl.getpath() }" /> <property name="username" value="#{ @dburl.getuserinfo().split(':')[0] }" /> <property name="password" value="#{ @dburl.getuserinfo().split(':')[1] }" /> </bean> <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localcontainerentitymanagerfactorybean"> <property name="datasource" ref="datasource" /> <property name="jpavendoradapter"> <bean class="org.springframework.orm.jpa.vendor.hibernatejpavendoradapter" /> </property> </bean> hibernate jpa spring-mvc c3p0
No comments:
Post a Comment