Re: config database in Tomcat

2009-11-24 Thread dishmily

thank you, it works!

there are two factor need to mention:

1) as i used hibernate to create Database-connection before, the connection
pool C3P0 was used in hibernate. but when i try to maintain
Database-connection through JNDI in tomcat, i donn't need C3P0 anymore. so,
i SHOULD delete configuration about C3P0 in hibernate configuration file.
The error message i got had something to do with it.

2) I SHOULD add a ResourceLink in the Context.xml, in order to let Hibernate
using the global resource, witch is in read only mode.
(https://forums.hibernate.org/viewtopic.php?f=1t=937920start=0)
ResourceLink name=jdbc/mysql global=jdbc/mysql
type=javax.sql.DataSource/







Pid Ster wrote:
 
 On 23/11/2009 16:03, dishmily wrote:

 i have made few changes, but it didn't work.
 (my project uses tomcat and hibernate.)
 
 You didn't mention that before.
 
 You need to configure Hibernate to use the DataSource jdbc/mysql that 
 you've created.  It doesn't appear to be correctly configured at the
 moment.
 
 
 You can test that the db connection pool is working:
 
   InitialContext ic = new InitialContext();
   DataSource ds = (DataSource) ic.lookup(java:comp/env/jdbc/mysql);
   Connection conn = ds.getConnection();
 
 
 
 1) $Tomcat_Home\conf\context.xml was changed to:
 
 This is the default context definition, rather than a web app specific 
 one.  Just so you know.
 
 To configure it for a specific web app, include a context.xml definition 
 in the META-INF folder of your webapp.
 
 
 p
 
 
 Context

  WatchedResourceWEB-INF/web.xml/WatchedResource
  
  Resource name=jdbc/mysql auth=Container type=javax.sql.DataSource
 maxActive=100 maxIdle=30 maxWait=1
 username=db password=pwd
 driverClassName=com.mysql.jdbc.Driver
 url=jdbc:mysql://localhost:3306/db/

 /Context

 2)resource-ref  was added into
 $Tomcat_Home\webapps\axis2\WEB-INF\web.xml
 :

 web-app
 ...
 resource-ref
  descriptionDB Connection/description
  res-ref-namejdbc/mysql/res-ref-name
  res-typejavax.sql.DataSource/res-type
  res-authContainer/res-auth
  /resource-ref
 
 /web-app

 wenn i ran the web application, i got the error message:

 INFO: Initializing c3p0 pool...
 com.mchange.v2.c3p0.poolbackeddatasou...@29fb0733 [
 connectionPoolDataSource
 -  com.mchange.v2.c3p0.wrapperconnectionpooldatasou...@dd3d444b [
 acquireIncrement -  5, acquireRetryAttempts -  30, acquireRetryDelay -
 1000, autoCommitOnClose -  false, automaticTestTable -  null,
 breakAfterAcquireFailure -  false, checkoutTimeout -  0,
 connectionCustomizerClassName -  null, connectionTesterClassName -
 com.mchange.v2.c3p0.impl.DefaultConnectionTester,
 debugUnreturnedConnectionStackTraces -  false, factoryClassLocation - 
 null,
 forceIgnoreUnresolvedTransactions -  false, identityToken -
 1hgeigx859d0cr2vfrvc8|1ba92db, idleConnectionTestPeriod -  7200,
 initialPoolSize -  10, maxAdministrativeTaskTime -  0, maxConnectionAge
 -
 0, maxIdleTime -  14400, maxIdleTimeExcessConnections -  0, maxPoolSize
 -
 100, maxStatements -  100, maxStatementsPerConnection -  0, minPoolSize
 -
 10, nestedDataSource - 
 com.mchange.v2.c3p0.drivermanagerdatasou...@b33bd229
 [ description -  null, driverClass -  null, factoryClassLocation - 
 null,
 identityToken -  1hgeigx859d0cr2vfrvc8|87ad67, jdbcUrl -  null,
 properties
 -  {useUnicode=true, autocommit=false, characterEncoding=UTF8} ],
 preferredTestQuery -  null, propertyCycle -  0, testConnectionOnCheckin
 -
 false, testConnectionOnCheckout -  false, unreturnedConnectionTimeout - 
 0,
 usesTraditionalReflectiveProxies -  false; userOverrides: {} ],
 dataSourceName -  null, factoryClassLocation -  null, identityToken -
 1hgeigx859d0cr2vfrvc8|15b55bc, numHelperThreads -  3 ]
 23.11.2009 16:51:25
 com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector run
 WARNUNG:
 com.mchange.v2.async.threadpoolasynchronousrunner$deadlockdetec...@170ec24
 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending
 tasks!
 23.11.2009 16:51:25
 com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector run
 WARNUNG:
 com.mchange.v2.async.threadpoolasynchronousrunner$deadlockdetec...@170ec24
 -- APPARENT DEADLOCK!!! Complete Status:
  Managed Threads: 3
  Active Threads: 3
  Active Tasks:
  com.mchange.v2.resourcepool.basicresourcepool$acquiret...@c5d9c1
 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
  
 com.mchange.v2.resourcepool.basicresourcepool$acquiret...@15b4ad2
 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
  com.mchange.v2.resourcepool.basicresourcepool$acquiret...@8d3d62
 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
  Pending Tasks:
  com.mchange.v2.resourcepool.basicresourcepool$acquiret...@b9132a
  com.mchange.v2.resourcepool.basicresourcepool$acquiret...@996b65
  com.mchange.v2

Re: config database in Tomcat

2009-11-24 Thread dishmily

is it possible to define SQL Dialects org.hibernate.dialect.MySQLDialect in
context.xml in Tomcat? how? thanks.


Jens Greven wrote:
 
 You can also use c3p0 with Tomcat JNDI, e. g.
 
 ?xml version=1.0 encoding=UTF-8?
 Context path=/SupportPortal
  Resource   name=jdbc/MYSQL
  auth=Container
  type=com.mchange.v2.c3p0.ComboPooledDataSource
  description=DB Connection  
  
 jdbcUrl=jdbc:mysql://server:3306/mysql?autoReconnect=true
  driverClass=com.mysql.jdbc.Driver
  user=root
  password=password
  maxPoolSize=20
  minPoolSize=1
  initialPoolSize=1
  acquireIncrement=1
  maxConnectionAge=0
  maxIdleTime=1800
  maxIdleTimeExcessConnections=120
  idleConnectionTestPeriod=30
  testConnectionOnCheckout=true
  
 connectionCustomizerClassName=de.pma.dbobjects.DefaultConnectionCustomizer
  factory=org.apache.naming.factory.BeanFactory
  /
 /Context
 
 
 and a hibernate config file like:
 
 
 ?xml version=1.0 encoding=UTF-8?
 
 !DOCTYPE hibernate-configuration PUBLIC -//Hibernate/Hibernate 
 Configuration DTD 3.0//EN 
 http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd;
 
 hibernate-configuration
  session-factory
  property 
 name=hibernate.dialectorg.hibernate.dialect.MySQL5InnoDBDialect/property
  property 
 name=hibernate.connection.datasourcejava:comp/env/jdbc/MYSQL/property
  property name=hibernate.show_sqlfalse/property
  property name=hibernate.format_sqlfalse/property
  property 
 name=hibernate.current_session_context_classthread/property
  property 
 name=hibernate.cache.provider_classorg.hibernate.cache.NoCacheProvider/property
  /session-factory
 /hibernate-configuration
 
 
 
 
 dishmily schrieb:
 thank you, it works!
 
 there are two factor need to mention:
 
 1) as i used hibernate to create Database-connection before, the
 connection
 pool C3P0 was used in hibernate. but when i try to maintain
 Database-connection through JNDI in tomcat, i donn't need C3P0 anymore.
 so,
 i SHOULD delete configuration about C3P0 in hibernate configuration file.
 The error message i got had something to do with it.
 
 2) I SHOULD add a ResourceLink in the Context.xml, in order to let
 Hibernate
 using the global resource, witch is in read only mode.
 (https://forums.hibernate.org/viewtopic.php?f=1t=937920start=0)
 ResourceLink name=jdbc/mysql global=jdbc/mysql
 type=javax.sql.DataSource/
 
 
 
 
 
 
 
 Pid Ster wrote:
 On 23/11/2009 16:03, dishmily wrote:
 i have made few changes, but it didn't work.
 (my project uses tomcat and hibernate.)
 You didn't mention that before.

 You need to configure Hibernate to use the DataSource jdbc/mysql that 
 you've created.  It doesn't appear to be correctly configured at the
 moment.


 You can test that the db connection pool is working:

   InitialContext ic = new InitialContext();
   DataSource ds = (DataSource) ic.lookup(java:comp/env/jdbc/mysql);
   Connection conn = ds.getConnection();



 1) $Tomcat_Home\conf\context.xml was changed to:
 This is the default context definition, rather than a web app specific 
 one.  Just so you know.

 To configure it for a specific web app, include a context.xml definition 
 in the META-INF folder of your webapp.


 p


 Context

  WatchedResourceWEB-INF/web.xml/WatchedResource

Resource name=jdbc/mysql auth=Container
 type=javax.sql.DataSource
 maxActive=100 maxIdle=30 maxWait=1
 username=db password=pwd
 driverClassName=com.mysql.jdbc.Driver
 url=jdbc:mysql://localhost:3306/db/

 /Context

 2)resource-ref  was added into
 $Tomcat_Home\webapps\axis2\WEB-INF\web.xml
 :

 web-app
 ...
 resource-ref
descriptionDB Connection/description
res-ref-namejdbc/mysql/res-ref-name
res-typejavax.sql.DataSource/res-type
res-authContainer/res-auth
/resource-ref
 
 /web-app

 wenn i ran the web application, i got the error message:

 INFO: Initializing c3p0 pool...
 com.mchange.v2.c3p0.poolbackeddatasou...@29fb0733 [
 connectionPoolDataSource
 -  com.mchange.v2.c3p0.wrapperconnectionpooldatasou...@dd3d444b [
 acquireIncrement -  5, acquireRetryAttempts -  30, acquireRetryDelay
 -
 1000, autoCommitOnClose -  false, automaticTestTable -  null,
 breakAfterAcquireFailure -  false, checkoutTimeout -  0,
 connectionCustomizerClassName -  null, connectionTesterClassName -
 com.mchange.v2.c3p0.impl.DefaultConnectionTester,
 debugUnreturnedConnectionStackTraces -  false, factoryClassLocation - 
 null,
 forceIgnoreUnresolvedTransactions -  false, identityToken -
 1hgeigx859d0cr2vfrvc8|1ba92db, idleConnectionTestPeriod -  7200,
 initialPoolSize -  10, maxAdministrativeTaskTime -  0,
 maxConnectionAge
 -
 0

config database in Tomcat

2009-11-23 Thread dishmily

i use 3 tomcats in one PC, in each tomcat i have a webservice, for each
webservice i use a mysql database.

my question is:

how can i write a config file in each tomcat to let tomcat1 load DB1,
tomcat2 load DB2 and tomcat3 load DB3.

thanks. 
-- 
View this message in context: 
http://old.nabble.com/config-database-in-Tomcat-tp26477627p26477627.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org



Re: config database in Tomcat

2009-11-23 Thread dishmily

thanks. the tomcat i use is Tomcat 6.0.
i will have a look at the URL.


Pid Ster wrote:
 
 On 23/11/2009 13:00, dishmily wrote:

 i use 3 tomcats in one PC, in each tomcat i have a webservice, for each
 webservice i use a mysql database.

 my question is:

 how can i write a config file in each tomcat to let tomcat1 load DB1,
 tomcat2 load DB2 and tomcat3 load DB3.

 thanks.
 
 
 I'm guessing that you're using Tomcat 6.0, because you didn't say.
 The extensive documentation is often a good place to start:
 
 http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html
 
 
 p
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
 For additional commands, e-mail: users-h...@tomcat.apache.org
 
 
 

-- 
View this message in context: 
http://old.nabble.com/config-database-in-Tomcat-tp26477627p26478248.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org



Re: config database in Tomcat

2009-11-23 Thread dishmily
:547)


23.11.2009 16:51:34
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask run
WARNUNG: com.mchange.v2.resourcepool.basicresourcepool$acquiret...@c5d9c1 --
Acquisition Attempt Failed!!! Clearing pending acquires. While trying to
acquire a needed new resource, we failed to succeed more than the maximum
number of allowed acquisition attempts (30). Last acquisition attempt
exception: 
java.lang.NullPointerException
at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507)
at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476)
at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307)
at java.sql.DriverManager.getDriver(DriverManager.java:253)
at
com.mchange.v2.c3p0.DriverManagerDataSource.driver(DriverManagerDataSource.java:223)
at
com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:119)
at
com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:143)
at
com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:132)
at
com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
at
com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
at
com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
at
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
at
com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)




Pid Ster wrote:
 
 On 23/11/2009 13:00, dishmily wrote:

 i use 3 tomcats in one PC, in each tomcat i have a webservice, for each
 webservice i use a mysql database.

 my question is:

 how can i write a config file in each tomcat to let tomcat1 load DB1,
 tomcat2 load DB2 and tomcat3 load DB3.

 thanks.
 
 
 I'm guessing that you're using Tomcat 6.0, because you didn't say.
 The extensive documentation is often a good place to start:
 
 http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html
 
 
 p
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
 For additional commands, e-mail: users-h...@tomcat.apache.org
 
 
 

-- 
View this message in context: 
http://old.nabble.com/config-database-in-Tomcat-tp26477627p26480783.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org