2016-06-02 1 views
1

Je suis en train d'exécuter un script bash par Grails et je suis coincé sur une petite erreur:Biens manquants lorsque vous essayez d'exécuter un script bash dans Grails

ERROR errors.GrailsExceptionResolver - MissingPropertyException occurred when processing request: [GET] /FrameTest/loginKeys/index 
No such property: loginKeysandFirstTest for class: frametest.LoginKeysController. Stacktrace follows: 
groovy.lang.MissingPropertyException: No such property: loginKeysandFirstTest for class: frametest.LoginKeysController 
    at frametest.LoginKeysController.index(LoginKeysController.groovy:11) 
    at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:198) 
    at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 

dans mon contrôleur ce que je suis codage:

class LoginKeysController { 

    def index() { 
     "sh /Users/ironmantis7x/testfiles/mashery_login.sh".execute().text 
     render (view: loginKeysandFirstTest) 
    } 
} 

et mon gsp:

<%@ page contentType="text/html;charset=UTF-8" %> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 
<meta name="layout" content="main"/> 
<title>Demo Test Run Results</title> 
</head> 
<body> 
    <div class="body"> 

    </div> 
</body> 
</html> 

Qu'est-ce que je manque qui trébuche cette erreur dans Grails? Je cours ggts avec des grails 2.4.4.

Merci.

ironmantis7x

+0

Je doute que ce soit la cause de votre erreur, mais je dois signaler que 'sh' exécute le shell POSIX, pas bash. Il pourrait y avoir un lien symbolique 'sh -> bash' mais lorsqu'il est appelé' sh', il se comporte (pour la plupart) comme un shell standard et ne supporte aucune des extensions bash. Si vous voulez exécuter bash, utilisez 'bash'. – cdarke

Répondre

1

La question est en cours d'exécution pas sh. Jetez un oeil de plus près l'erreur:

No such property: loginKeysandFirstTest for class: frametest.LoginKeysController

Pas ces biens: loginKeysandFirstTest pour la classe: frametest.LoginKeysController

Le problème est avec la ligne droite après course sh:

render (view: loginKeysandFirstTest) 

La vue pa rameter attend le nom d'une vue. Donc, si la vue est nommé loginKeysandFirstTest, vous pouvez appeler rendre avec ce nom comme String, comme ceci:

render (view: 'loginKeysandFirstTest') 
+0

hmmm .... J'ai essayé cela et la sortie est vide ... – ironmantis7x

+0

c'est la bonne réponse. Merci à tous. – ironmantis7x