2012-10-23 2 views
1

J'ai créé une application Grails et elle est en voie d'achèvement et je l'ai testée avec divers fournisseurs de Cloud, par exemple Cloud Foundry, Heroku, App Engine, etc. Finalement, j'ai choisi Jelastic comme c'était le un qui semblait supporter pleinement l'utilisation des plug-ins locaux car j'avais seulement besoin de télécharger un fichier "war" pour le déploiement. Jusqu'à aujourd'hui, je n'avais aucun problème avec cela et tout allait bien, mais j'ai apporté quelques modifications et ajouté quelques relations à mon application que je remplis ensuite en utilisant le BootStrap. Cette Bootstrap a travaillé avant mais il a arrêté, ci-dessous, vous pouvez voir un exemple de mon Bootstrap:Déploiement de Grails sur le cloud (Jelastic) Bootstrap?

def init = { servletContext -> 

def adminRole = new SecRole(authority: 'ADMIN').save(flush: true) 
def userRole = new SecRole(authority: 'USER').save(flush: true) 

def Admin = new SecUser(username: 'admin', email:'[email protected]', enabled: true, password: 'password') 

def SuperUser = new Areas(name:"SuperUser") 
.addToUsers(Admin) 
.save(flush:true) 

SecUserSecRole.create Admin, adminRole, true 

assert SecUser.count() == 1 
assert SecRole.count() == 2 
assert SecUserSecRole.count() == 1 
    } 

Quand je lance l'application localement avec ces données BootStrap fonctionne très bien, mais quand je le lance sur Jelastic je reçois le message d'erreur suivant:

SEVERE: Exception sending context initialized event to listener instance of class org.codehaus.groovy.grails.web.context.GrailsContextLoaderListener 
org.springframework.beans.factory.access.BootstrapException: Error executing bootstraps; nested exception is org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; SQL 

Ceci est seulement une pile trace partielle d'où l'erreur se produit, mais im à perte pour expliquer pourquoi il arrive, quelqu'un peut-il s'il vous plaît aider?

Merci

EDIT .....

J'ai aussi essayé ces données bootstrap avec le même message d'erreur affiché: S

def init = { servletContext -> 

def adminRole = new SecRole(authority: 'ADMIN').save(flush: true) 

def SuperAdmin = new Areas(name: 'Super Admin') 

SuperAdmin.save(flush: true) 

def area = Areas.findByName('SuperAdmin') 

def SuperAdmin = new SecUser(username: 'admin', email:'[email protected]', area: area, enabled: true, password: 'admin') 

SuperAdmin.save() 

SecUserSecRole.create SuperAdmin, adminRole, true 

assert SecUser.count() == 1 
assert SecRole.count() == 2 
assert SecUserSecRole.count() == 1 
    } 

Le message d'erreur que je reçois est au-dessous :

SEVERE: Exception sending context initialized event to listener instance of class org.codehaus.groovy.grails.web.context.GrailsContextLoaderListener 
org.springframework.beans.factory.access.BootstrapException: Error executing bootstraps; nested exception is org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; SQL [select this_.id as id3_0_, this_.version as version3_0_, this_.account_expired as account3_3_0_, this_.account_locked as account4_3_0_, this_.area_id as area5_3_0_, this_.email as email3_0_, this_.enabled as enabled3_0_, this_."password" as password8_3_0_, this_.password_expired as password9_3_0_, this_.username as username3_0_ from sec_user this_ where this_.username=?]; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query 

J'ai supprimé les données BootStrap et l'application démarre bien, quelqu'un peut-il faire la lumière sur ce sujet car il fonctionne bien avec le bootstrap localement pas sur le nuage? Merci d'avance

+0

Quelqu'un peut-il vous aider? – user723858

+0

J'ai mis à jour la question, quelqu'un peut-il m'aider? – user723858

+0

est-ce qu'il n'y a personne qui peut faire halte avec cela? le fichier bootstrap est-il faux? – user723858

Répondre

1

Je suppose que les informations que vous avez fournies ne sont pas suffisantes pour vous aider. Afin de déboguer cela, je suggère que vous supprimez votre code d'amorçage afin que votre application va démarrer.

Ensuite, je voudrais installer le plugin de la console (http://grails.org/plugin/console). Cela vous permettra de tester votre code d'amorçage dans la console. Peut-être que cela vous aide à suivre le problème.

Hope qui aide

0

Utilisez-la même topologie de l'environnement vous localement que vous avez dans les nuages ​​Jelastic? Pourriez-vous indiquer votre nom d'environnement Jelastic? Assurez-vous également que votre installation Jelastic ne manque pas de bibliothèques de connexion DB et que la version est la même que celle que vous utilisez localement.

Questions connexes