Erreur de l'évaluation de l'expression: Ne peut pas invoquer la méthode getAt() sur l'objet null
J'ai une Question de modèle de domaine est conçu comme suit
class Question {
List<Choice> choiceCollection;
static hasMany = [choiceCollection:Choice]
static mappping = {
choiceCollection(joinTable:false)
}
}
Pour répondre à mes besoins, /grain-app/views/question/créer.spg a été personnalisé comme vous pouvez le voir ci-dessous
créer.gsp
<g:each var="i" in="${(0..4)}">
<div class="fieldcontain required">
<label for="description">
Option ${i + 1}.
<span class="required-indicator">*</span>
</label>
<g:textArea name="choiceCollection[${i}].description" cols="40" rows="5" maxlength="2000" value="${questionInstance?.choiceCollection[i]?.description}"/>
</div>
</g:each>
Lorsque j'essaie d'accéder créer la vue, j'obtiens l'erreur suivante
Error evaluating expression [questionInstance?.choiceCollection[i]?.description]: Cannot invoke method getAt() on null object
Question: Que dois-je faire pour faire fonctionner mon application ?
Graal version: 2.1.1
OriginalL'auteur Arthur Ronald | 2012-10-07
Vous devez vous connecter pour publier un commentaire.
Au lieu d'accéder par [] utilisation getAt, puis l' ? Opérateur:
Thx. Sujet de votre question:Il est l'un de la
java.util.List
de groovy: groovy.codehaus.org/groovy-jdk/java/util/List.htmlPuis-je utiliser get au lieu de getAt?
Malheureusement, pas toujours, mais peut-être dans ce cas précis
OriginalL'auteur Chris
J'ai observé cette erreur lorsque vous tentez d'exécuter graal (2.2.4) à l'aide de Java 8. La cause n'était pas immédiatement évident. Il est enterré quelque part graal.util.BuildSettings.groovy
Quand je revenue à java 1.7, le message a disparu.
OriginalL'auteur miles zarathustra
essayez d'effectuer une itération uniquement sur l'existant, choix:
cela devrait faire l'affaire...
OriginalL'auteur rdmueller