2013-08-31 7 views
6

पर grails एप्लिकेशन को तैनात करते समय नाम 'लेनदेन प्रबंधक पैस्ट प्रोसेसर' नाम से बीन बनाने में त्रुटि, मैं टॉमकैट 7.0.42 पर अपने grails (2.2.1) एप्लिकेशन को तैनात करने की कोशिश कर रहा हूं। तो मैंने grails वेबसाइट से link में दिए गए चरणों का पालन किया।टोमकैट

Error creating bean with name 'transactionManagerPostProcessor': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager': Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory': Cannot resolve reference to bean 'hibernateProperties' while setting bean 
property 'hibernateProperties'; nested exception is org.springframework.beans.fa 
ctory.BeanCreationException: Error creating bean with name 'hibernateProperties' 
: Cannot resolve reference to bean 'dialectDetector' while setting bean property 
'properties' with key [hibernate.dialect]; nested exception is org.springframew 
ork.beans.factory.BeanCreationException: Error creating bean with name 'dialectD 
etector': Invocation of init method failed; nested exception is org.springframew 
ork.jdbc.support.MetaDataAccessException: Error while extracting DatabaseMetaDat 
a; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create 
PoolableConnectionFactory (Database may be already in use: "Locked by another p 
rocess". Possible solutions: close all other connection(s); use the server mode 
[90020-164]) 
org.springframework.beans.factory.BeanCreationException: Error creating bean wit 
h name 'transactionManagerPostProcessor': Initialization of bean failed; nested 
exception is org.springframework.beans.factory.BeanCreationException: Error crea 
ting bean with name 'transactionManager': Cannot resolve reference to bean 'sess 
ionFactory' while setting bean property 'sessionFactory'; nested exception is or 
g.springframework.beans.factory.BeanCreationException: Error creating bean with 
name 'sessionFactory': Cannot resolve reference to bean 'hibernateProperties' wh 
ile setting bean property 'hibernateProperties'; nested exception is org.springf 
ramework.beans.factory.BeanCreationException: Error creating bean with name 'hib 
ernateProperties': Cannot resolve reference to bean 'dialectDetector' while sett 
ing bean property 'properties' with key [hibernate.dialect]; nested exception is 
org.springframework.beans.factory.BeanCreationException: Error creating bean wi 
th name 'dialectDetector': Invocation of init method failed; nested exception is 
org.springframework.jdbc.support.MetaDataAccessException: Error while extractin 
g DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNestedExcepti 
on: Cannot create PoolableConnectionFactory (Database may be already in use: "Lo 
cked by another process". Possible solutions: close all other connection(s); use 
the server mode [90020-164]) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor. 
java:1145) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor 
.java:615) 
     at java.lang.Thread.run(Thread.java:722) 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'transactionManager': Cannot resolve reference to bean 'sessio 
nFactory' while setting bean property 'sessionFactory'; nested exception is org. 
springframework.beans.factory.BeanCreationException: Error creating bean with na 
me 'sessionFactory': Cannot resolve reference to bean 'hibernateProperties' whil 
e setting bean property 'hibernateProperties'; nested exception is org.springfra 
mework.beans.factory.BeanCreationException: Error creating bean with name 'hiber 
nateProperties': Cannot resolve reference to bean 'dialectDetector' while settin 
g bean property 'properties' with key [hibernate.dialect]; nested exception is o 
rg.springframework.beans.factory.BeanCreationException: Error creating bean with 
name 'dialectDetector': Invocation of init method failed; nested exception is o 
rg.springframework.jdbc.support.MetaDataAccessException: Error while extracting 
DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNestedException 
: Cannot create PoolableConnectionFactory (Database may be already in use: "Lock 
ed by another process". Possible solutions: close all other connection(s); use t 
he server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'sessionFactory': Cannot resolve reference to bean 'hibernateP 
roperties' while setting bean property 'hibernateProperties'; nested exception i 
s org.springframework.beans.factory.BeanCreationException: Error creating bean w 
ith name 'hibernateProperties': Cannot resolve reference to bean 'dialectDetecto 
r' while setting bean property 'properties' with key [hibernate.dialect]; nested 
exception is org.springframework.beans.factory.BeanCreationException: Error cre 
ating bean with name 'dialectDetector': Invocation of init method failed; nested 
exception is org.springframework.jdbc.support.MetaDataAccessException: Error wh 
ile extracting DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQL 
NestedException: Cannot create PoolableConnectionFactory (Database may be alread 
y in use: "Locked by another process". Possible solutions: close all other conne 
ction(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'hibernateProperties': Cannot resolve reference to bean 'diale 
ctDetector' while setting bean property 'properties' with key [hibernate.dialect 
]; nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'dialectDetector': Invocation of init method faile 
d; nested exception is org.springframework.jdbc.support.MetaDataAccessException: 
Error while extracting DatabaseMetaData; nested exception is org.apache.commons 
.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Database may 
be already in use: "Locked by another process". Possible solutions: close all ot 
her connection(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'dialectDetector': Invocation of init method failed; nested ex 
ception is org.springframework.jdbc.support.MetaDataAccessException: Error while 
extracting DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNes 
tedException: Cannot create PoolableConnectionFactory (Database may be already i 
n use: "Locked by another process". Possible solutions: close all other connecti 
on(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.jdbc.support.MetaDataAccessException: Error while 
extracting DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNes 
tedException: Cannot create PoolableConnectionFactory (Database may be already i 
n use: "Locked by another process". Possible solutions: close all other connecti 
on(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableCon 
nectionFactory (Database may be already in use: "Locked by another process". Pos 
sible solutions: close all other connection(s); use the server mode [90020-164]) 

     at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFacto 
ry(BasicDataSource.java:1549) 
     at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSou 
rce.java:1388) 
     at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource 
.java:1044) 
     ... 3 more 
Caused by: org.h2.jdbc.JdbcSQLException: Database may be already in use: "Locked 
by another process". Possible solutions: close all other connection(s); use the 
server mode [90020-164] 
     at org.h2.message.DbException.getJdbcSQLException(DbException.java:329) 
     at org.h2.message.DbException.get(DbException.java:169) 
     at org.h2.message.DbException.get(DbException.java:146) 
     at org.h2.store.FileLock.getExceptionAlreadyInUse(FileLock.java:439) 
     at org.h2.store.FileLock.lockFile(FileLock.java:336) 
     at org.h2.store.FileLock.lock(FileLock.java:128) 
     at org.h2.engine.Database.open(Database.java:542) 
     at org.h2.engine.Database.openDatabase(Database.java:222) 
     at org.h2.engine.Database.<init>(Database.java:217) 
     at org.h2.engine.Engine.openSession(Engine.java:56) 
     at org.h2.engine.Engine.openSession(Engine.java:159) 
     at org.h2.engine.Engine.createSessionAndValidate(Engine.java:138) 
     at org.h2.engine.Engine.createSession(Engine.java:121) 
     at org.h2.engine.Engine.createSession(Engine.java:28) 
     at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.jav 
a:305) 
     at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:110) 
     at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:94) 
     at org.h2.Driver.connect(Driver.java:72) 
     at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(Driv 
erConnectionFactory.java:38) 
     at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(Poolable 
ConnectionFactory.java:582) 
     at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(Bas 
icDataSource.java:1556) 
     at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFacto 
ry(BasicDataSource.java:1545) 
     ... 5 more 
2013-08-31 19:17:32,185 [http-apr-8081-exec-4] ERROR context.GrailsContextLoader 
    - Error initializing Grails: Error creating bean with name 'transactionManager 
PostProcessor': Initialization of bean failed; nested exception is org.springfra 
mework.beans.factory.BeanCreationException: Error creating bean with name 'trans 
actionManager': Cannot resolve reference to bean 'sessionFactory' while setting 
bean property 'sessionFactory'; nested exception is org.springframework.beans.fa 
ctory.BeanCreationException: Error creating bean with name 'sessionFactory': Can 
not resolve reference to bean 'hibernateProperties' while setting bean property 
'hibernateProperties'; nested exception is org.springframework.beans.factory.Bea 
nCreationException: Error creating bean with name 'hibernateProperties': Cannot 
resolve reference to bean 'dialectDetector' while setting bean property 'propert 
ies' with key [hibernate.dialect]; nested exception is org.springframework.beans 
.factory.BeanCreationException: Error creating bean with name 'dialectDetector': 
Invocation of init method failed; nested exception is org.springframework.jdbc. 
support.MetaDataAccessException: Error while extracting DatabaseMetaData; nested 
exception is org.apache.commons.dbcp.SQLNestedException: Cannot create Poolable 
ConnectionFactory (Database may be already in use: "Locked by another process". 
Possible solutions: close all other connection(s); use the server mode [90020-16 
4]) 
org.springframework.beans.factory.BeanCreationException: Error creating bean wit 
h name 'transactionManagerPostProcessor': Initialization of bean failed; nested 
exception is org.springframework.beans.factory.BeanCreationException: Error crea 
ting bean with name 'transactionManager': Cannot resolve reference to bean 'sess 
ionFactory' while setting bean property 'sessionFactory'; nested exception is or 
g.springframework.beans.factory.BeanCreationException: Error creating bean with 
name 'sessionFactory': Cannot resolve reference to bean 'hibernateProperties' wh 
ile setting bean property 'hibernateProperties'; nested exception is org.springf 
ramework.beans.factory.BeanCreationException: Error creating bean with name 'hib 
ernateProperties': Cannot resolve reference to bean 'dialectDetector' while sett 
ing bean property 'properties' with key [hibernate.dialect]; nested exception is 
org.springframework.beans.factory.BeanCreationException: Error creating bean wi 
th name 'dialectDetector': Invocation of init method failed; nested exception is 
org.springframework.jdbc.support.MetaDataAccessException: Error while extractin 
g DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNestedExcepti 
on: Cannot create PoolableConnectionFactory (Database may be already in use: "Lo 
cked by another process". Possible solutions: close all other connection(s); use 
the server mode [90020-164]) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor. 
java:1145) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor 
.java:615) 
     at java.lang.Thread.run(Thread.java:722) 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'transactionManager': Cannot resolve reference to bean 'sessio 
nFactory' while setting bean property 'sessionFactory'; nested exception is org. 
springframework.beans.factory.BeanCreationException: Error creating bean with na 
me 'sessionFactory': Cannot resolve reference to bean 'hibernateProperties' whil 
e setting bean property 'hibernateProperties'; nested exception is org.springfra 
mework.beans.factory.BeanCreationException: Error creating bean with name 'hiber 
nateProperties': Cannot resolve reference to bean 'dialectDetector' while settin 
g bean property 'properties' with key [hibernate.dialect]; nested exception is o 
rg.springframework.beans.factory.BeanCreationException: Error creating bean with 
name 'dialectDetector': Invocation of init method failed; nested exception is o 
rg.springframework.jdbc.support.MetaDataAccessException: Error while extracting 
DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNestedException 
: Cannot create PoolableConnectionFactory (Database may be already in use: "Lock 
ed by another process". Possible solutions: close all other connection(s); use t 
he server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'sessionFactory': Cannot resolve reference to bean 'hibernateP 
roperties' while setting bean property 'hibernateProperties'; nested exception i 
s org.springframework.beans.factory.BeanCreationException: Error creating bean w 
ith name 'hibernateProperties': Cannot resolve reference to bean 'dialectDetecto 
r' while setting bean property 'properties' with key [hibernate.dialect]; nested 
exception is org.springframework.beans.factory.BeanCreationException: Error cre 
ating bean with name 'dialectDetector': Invocation of init method failed; nested 
exception is org.springframework.jdbc.support.MetaDataAccessException: Error wh 
ile extracting DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQL 
NestedException: Cannot create PoolableConnectionFactory (Database may be alread 
y in use: "Locked by another process". Possible solutions: close all other conne 
ction(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'hibernateProperties': Cannot resolve reference to bean 'diale 
ctDetector' while setting bean property 'properties' with key [hibernate.dialect 
]; nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'dialectDetector': Invocation of init method faile 
d; nested exception is org.springframework.jdbc.support.MetaDataAccessException: 
Error while extracting DatabaseMetaData; nested exception is org.apache.commons 
.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Database may 
be already in use: "Locked by another process". Possible solutions: close all ot 
her connection(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati 
ng bean with name 'dialectDetector': Invocation of init method failed; nested ex 
ception is org.springframework.jdbc.support.MetaDataAccessException: Error while 
extracting DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNes 
tedException: Cannot create PoolableConnectionFactory (Database may be already i 
n use: "Locked by another process". Possible solutions: close all other connecti 
on(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.springframework.jdbc.support.MetaDataAccessException: Error while 
extracting DatabaseMetaData; nested exception is org.apache.commons.dbcp.SQLNes 
tedException: Cannot create PoolableConnectionFactory (Database may be already i 
n use: "Locked by another process". Possible solutions: close all other connecti 
on(s); use the server mode [90020-164]) 
     ... 3 more 
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableCon 
nectionFactory (Database may be already in use: "Locked by another process". Pos 
sible solutions: close all other connection(s); use the server mode [90020-164]) 

     at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFacto 
ry(BasicDataSource.java:1549) 
     at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSou 
rce.java:1388) 
     at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource 
.java:1044) 
     ... 3 more 
Caused by: org.h2.jdbc.JdbcSQLException: Database may be already in use: "Locked 
by another process". Possible solutions: close all other connection(s); use the 
server mode [90020-164] 
     at org.h2.message.DbException.getJdbcSQLException(DbException.java:329) 
     at org.h2.message.DbException.get(DbException.java:169) 
     at org.h2.message.DbException.get(DbException.java:146) 
     at org.h2.store.FileLock.getExceptionAlreadyInUse(FileLock.java:439) 
     at org.h2.store.FileLock.lockFile(FileLock.java:336) 
     at org.h2.store.FileLock.lock(FileLock.java:128) 
     at org.h2.engine.Database.open(Database.java:542) 
     at org.h2.engine.Database.openDatabase(Database.java:222) 
     at org.h2.engine.Database.<init>(Database.java:217) 
     at org.h2.engine.Engine.openSession(Engine.java:56) 
     at org.h2.engine.Engine.openSession(Engine.java:159) 
     at org.h2.engine.Engine.createSessionAndValidate(Engine.java:138) 
     at org.h2.engine.Engine.createSession(Engine.java:121) 
     at org.h2.engine.Engine.createSession(Engine.java:28) 
     at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.jav 
a:305) 
     at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:110) 
     at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:94) 
     at org.h2.Driver.connect(Driver.java:72) 
     at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(Driv 
erConnectionFactory.java:38) 
     at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(Poolable 
ConnectionFactory.java:582) 
     at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(Bas 
icDataSource.java:1556) 
     at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFacto 
ry(BasicDataSource.java:1545) 
     ... 5 more 
Aug 31, 2013 7:17:32 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error listenerStart 
Aug 31, 2013 7:17:32 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/BskDPP2013ExcelImportToDatabase-0.1] startup failed due to pre 
vious errors 
Aug 31, 2013 7:17:32 PM org.apache.catalina.loader.WebappClassLoader clearRefere 
ncesJdbc 
SEVERE: The web application [/BskDPP2013ExcelImportToDatabase-0.1] registered th 
e JDBC driver [org.h2.Driver] but failed to unregister it when the web applicati 
on was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unre 
gistered. 

आवेदन, जब रन एप्लिकेशन आदेश के माध्यम से चलाने के (IntelliJ में) ठीक काम करता है: लेकिन जब मैं बिलाव वेब अनुप्रयोग प्रबंधक से आवेदन शुरू करने की कोशिश, मैं बिल्ला कंसोल पर निम्न त्रुटि लॉग देखें।

अगर हम लॉग से यह लाइन देखते हैं: Cannot create PoolableConnectionFactory (Database may be already in use: "Locked by another process". Possible solutions: close all other connection(s); use the server mode [90020-164]), यह कहता है कि डेटाबेस किसी अन्य प्रक्रिया द्वारा उपयोग किया जा रहा है। हालांकि ऐसा नहीं हो सकता क्योंकि डेटाबेस एचएसक्यूएलडीबी है जो grails आवेदन के साथ आंतरिक है और कोई अन्य बाहरी डीबीएमएस का उपयोग नहीं किया जा रहा है।

मैं निश्चित रूप से उपरोक्त मुद्दे को हल करता हूं (और इसके अंतिम पर भी स्वीकार करता हूं) हल करता है (या कम से कम हल करने की दिशा देता है)।

संपादित करें: यहाँ मेरी DataSource.groovy

dataSource { 
    pooled = true 
    driverClassName = "org.h2.Driver" 
    username = "sa" 
    password = "" 
} 
hibernate { 
    cache.use_second_level_cache = true 
    cache.use_query_cache = false 
    cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory' 
} 
// environment specific settings 
environments { 
    development { 
     dataSource { 
      dbCreate = "update" // one of 'create', 'create-drop', 'update', 'validate', '' 
      url = "jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000" 

     } 
    } 
    test { 
     dataSource { 
      dbCreate = "update" 
      url = "jdbc:h2:mem:testDb;MVCC=TRUE;LOCK_TIMEOUT=10000" 
     } 
    } 
    production { 
     dataSource { 
      dbCreate = "update" 
      url = "jdbc:h2:file:prodDb;MVCC=TRUE;LOCK_TIMEOUT=10000" 
      pooled = true 
      properties { 
       maxActive = -1 
       minEvictableIdleTimeMillis=1800000 
       timeBetweenEvictionRunsMillis=1800000 
       numTestsPerEvictionRun=3 
       testOnBorrow=true 
       testWhileIdle=true 
       testOnReturn=true 
       validationQuery="SELECT 1" 
      } 
     } 
    } 
} 
+0

'DataSource.groovy' दिखाएं। – dmahapatro

+0

@dmahapatro संपादित देखें। – rahulserver

+0

क्या आपके पास उसी कॉन्फ़िगरेशन के साथ टोमकैट पर तैनात अन्य grails अनुप्रयोग हैं? क्या आप उदाहरण के लिए 'prodDb1' में इन-मेमोरी' prodDb' को बदलने का प्रयास कर सकते हैं और फिर उपयोग के लिए टॉमकैट पर तैनात कर सकते हैं? – dmahapatro

उत्तर

1
url = "jdbc:h2:file:prodDb;MVCC=TRUE;LOCK_TIMEOUT=10000" 

एक एच 2 file डेटाबेस को संदर्भित करता है। यदि आप फ़ाइल डेटाबेस को संदर्भित नहीं करना चाहते हैं तो क्या आप स्मृति prodDb मेमोरी में उपयोग करने का प्रयास कर सकते हैं?

url = "jdbc:h2:prodDb;MVCC=TRUE;LOCK_TIMEOUT=10000" 
+0

क्या आप url = "jdbc: h2: mem: prodDb; MVCC = TRUE; LOCK_TIMEOUT = 10000" ... 'mem' उपरोक्त उत्तर में अनुपलब्ध हैं ... –

1

क्योंकि "grails युद्ध" कमांड डिफ़ॉल्ट रूप से उपयोग कर रहा उत्पादन वातावरण है कि DataSource.groovy में परिभाषित किया गया है युद्ध फ़ाइल उत्पन्न करते हैं। हो सकता है कि उत्पादन डीबी अभी तक काम नहीं कर रहा है, इसलिए आप अपने टेस्ट डीबी के साथ युद्ध बनाने के लिए "ग्रिल टेस्ट वॉर" चलाने की कोशिश कर सकते हैं।

संबंधित मुद्दे