Error deploying Grails-Anwendung - Anfänger
Bin ich Probleme bei der Bereitstellung einer Grails-Anwendung. Alles funktioniert in der lokalen Testumgebung.
FEHLER
[localhost-startStop-1] FEHLER-Kontext.GrailsContextLoader - Fehler
initialisieren der Anwendung: Fehler beim erstellen bean mit dem Namen
'transactionManagerPostProcessor': Initialisierung der bean fehlgeschlagen;
verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'transactionManager': Cannot resolve Referenz
zu Bohne 'sessionFactory' während der Einstellung von bean-Eigenschaft 'sessionFactory';
verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'sessionFactory': Cannot resolve Referenz zu
bean 'hibernateProperties' während der Einstellung von bean-Eigenschaft
'hibernateProperties'; verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'hibernateProperties': Cannot resolve
Referenz auf bean 'dialectDetector' während der Einstellung von bean-Eigenschaft
'Eigenschaften' mit der Taste [hibernate.Dialekt]; verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'dialectDetector': Aufruf der init-Methode
failed; nested exception
org.springframework.jdbc.Unterstützung.MetaDataAccessException: Fehler beim
extrahieren von DatabaseMetaData; verschachtelte Ausnahme ist
org.apache.Unterhaus.dbcp.SQLNestedException: kann Nicht erstellen
PoolableConnectionFactory (E /a-Ausnahme:
"java.io.FileNotFoundException: /var/lib/tomcat7/prodDb.lock.db
(Permission denied)"; "/var/lib/tomcat7/prodDb.lock.db" [90031-164])
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'transactionManagerPostProcessor':
Initialisierung der bean-failed; nested exception
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'transactionManager': Cannot resolve Referenz
zu Bohne 'sessionFactory' während der Einstellung von bean-Eigenschaft 'sessionFactory';
verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'sessionFactory': Cannot resolve Referenz zu
bean 'hibernateProperties' während der Einstellung von bean-Eigenschaft
'hibernateProperties'; verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'hibernateProperties': Cannot resolve
Referenz auf bean 'dialectDetector' während der Einstellung von bean-Eigenschaft
'Eigenschaften' mit der Taste [hibernate.Dialekt]; verschachtelte Ausnahme ist
org.springframework.Bohnen.factory.BeanCreationException: Fehler
erstellen bean mit dem Namen 'dialectDetector': Aufruf der init-Methode
failed; nested exception
org.springframework.jdbc.Unterstützung.MetaDataAccessException: Fehler beim
extrahieren von DatabaseMetaData; verschachtelte Ausnahme ist
org.apache.Unterhaus.dbcp.SQLNestedException: kann Nicht erstellen
PoolableConnectionFactory (E /a-Ausnahme:
"java.io.FileNotFoundException: /var/lib/tomcat7/prodDb.lock.db
(Permission denied)"; "/var/lib/tomcat7/prodDb.lock.db" [90031-164])
bei
java.util.gleichzeitige.Vollzieher$RunnableAdapter.call(Vollzieher.java:471)
bei java.util.gleichzeitige.FutureTask.run(FutureTask.java:262) at
java.util.gleichzeitige.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
bei
java.util.gleichzeitige.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
bei java.lang.Thread.run(Thread.java:744)
BUILD-CONFIG-DATEI :
//locations to search for config files that get merged into the main config;
//config files can be ConfigSlurper scripts, Java properties files, or classes
//in the classpath in ConfigSlurper format
//grails.config.locations = [ "classpath:${appName}-config.properties",
// "classpath:${appName}-config.groovy",
// "file:${userHome}/.grails/${appName}-config.properties",
// "file:${userHome}/.grails/${appName}-config.groovy"]
//if (System.properties["${appName}.config.location"]) {
// grails.config.locations << "file:" + System.properties["${appName}.config.location"]
//}
grails.project.groupId = appName //change this to alter the default package name and Maven publishing destination
grails.mime.file.extensions = true //enables the parsing of file extensions from URLs into the request format
grails.mime.use.accept.header = false
grails.mime.types = [
all: '*/*',
atom: 'application/atom+xml',
css: 'text/css',
csv: 'text/csv',
form: 'application/x-www-form-urlencoded',
html: ['text/html','application/xhtml+xml'],
js: 'text/javascript',
json: ['application/json', 'text/json'],
multipartForm: 'multipart/form-data',
rss: 'application/rss+xml',
text: 'text/plain',
xml: ['text/xml', 'application/xml']
]
//URL Mapping Cache Max Size, defaults to 5000
//grails.urlmapping.cache.maxsize = 1000
//What URL patterns should be processed by the resources plugin
grails.resources.adhoc.patterns = ['/images/*', '/css/*', '/js/*', '/plugins/*']
//The default codec used to encode data with ${}
grails.views.default.codec = "none" //none, html, base64
grails.views.gsp.encoding = "UTF-8"
grails.converters.encoding = "UTF-8"
//enable Sitemesh preprocessing of GSP pages
grails.views.gsp.sitemesh.preprocess = true
//scaffolding templates configuration
grails.scaffolding.templates.domainSuffix = 'Instance'
//Set to false to use the new Grails 1.2 JSONBuilder in the render method
grails.json.legacy.builder = false
//enabled native2ascii conversion of i18n properties files
grails.enable.native2ascii = true
//packages to include in Spring bean scanning
grails.spring.bean.packages = []
//whether to disable processing of multi part requests
grails.web.disable.multipart=false
//request parameters to mask when logging exceptions
grails.exceptionresolver.params.exclude = ['password']
//configure auto-caching of queries by default (if false you can cache individual queries with 'cache: true')
grails.hibernate.cache.queries = false
environments {
development {
grails.logging.jul.usebridge = true
}
production {
grails.logging.jul.usebridge = true
grails.serverURL = "http://100.117.40.30:8080/MyApp"
}
}
//log4j configuration
log4j = {
//Example of changing the log pattern for the default console appender:
//
//appenders {
// console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n')
//}
error 'org.codehaus.groovy.grails.web.servlet', //controllers
'org.codehaus.groovy.grails.web.pages', //GSP
'org.codehaus.groovy.grails.web.sitemesh', //layouts
'org.codehaus.groovy.grails.web.mapping.filter', //URL mapping
'org.codehaus.groovy.grails.web.mapping', //URL mapping
'org.codehaus.groovy.grails.commons', //core /classloading
'org.codehaus.groovy.grails.plugins', //plugins
'org.codehaus.groovy.grails.orm.hibernate', //hibernate integration
'org.springframework',
'org.hibernate',
'net.sf.ehcache.hibernate'
}
UPDATE
DATASOURCE.GROVVY
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 = "create-drop" //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: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"
}
}
}
}
- Sie sollte eigentlich teilen Sie Ihre
DataSource.groovy
. Sieht aus wie es ein Berechtigungsproblem beim Zugriff eine Datei (oder file-db)/var/lib/tomcat7/prodDb.lock.db
. - Ich habe aktualisiert die post mit
DataSource.groovy
- Ja die app ist auf der Suche nach einer h2-DB namens prodDb. Ersetzen Sie den Abschnitt unter Produktionsumgebung mit einem realen DB haben Sie im prod oder mit einer Datenquelle oder einer JNDI-Namen.
- Btw, wenn Sie nicht bewusst, es noch nicht, aber Sie verwenden können, grails run-app im dev-Modus statt, die die Bereitstellung der app jedes mal. Lauf-app verwendet einen embedded Tomcat auf port 8080 standardmäßig.
- Ich will nicht eine DB in der ich mich für den moment. Ist es möglich für mich zu verlassen, die leere ?
- Ich bin die Bereitstellung der app in einem remote-server, so dass ich muss eine war-Datei und installieren Sie es. Die Anwendung nicht über eine DB noch nicht. Aber ich will es bereitstellen, in dem remote-server.
- Ja, Sie können entfernen Sie alles unter
production { dataSource { .. } }
für die Zeit. - Das sortiert es. Ich konnte markieren Sie die Frage als richtig, wenn die Lösung wurde eingereicht, als Antwort. Danke Belastungen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie eine Datenquelle.groovy-Datei und erstellen Sie den KRIEG nach einer
grails clean
deaktiviert werden, die Standard-Datei-basierte Daten-QuelleDerzeit ist es versucht, eine Datenbank zu erstellen, die auf das Datei-system, aber scheitern, weil Sie nicht die Erlaubnis dazu
hibernateBean
nicht gefunden Ausnahme, ist es eine andere Art und Weise zu lösen? Warum eine neue erstellt Grails-Projekt verhält sich so?