2013-03-01 4 views
0

Est-ce que je fais mal ici, je ne peux pas passer le JSON objet au Grails service de Grails Controller.Impossible de passer JSONObject de Grails contrôleur au service Grails

class SampleController { 

    def sampleService 

    def updateProduct() { 
    def jq = request.JSON 
    sampleService(jq) 
    }  
} 

class SampleService { 

    def updateProduct (JSONObject requestJSON) { 
    if (!requestJSON) { 
     return null; 
    } 
    } 
} 

Pas de signature de la méthode: com.SampleService.call() est applicable pour les types d'arguments: (org.codehaus.groovy.grails.web.json.JSONObject) valeurs:

solutions possibles:

wait(), any(), wait(long), any(groovy.lang.Closure), each(groovy.lang.Closure), find().

Stacktrace suit:

+1

Voulez-vous poster le stacktrace? –

+0

Erreur 2013-03-01 10: 15: 45,056 [http-bio-8080-exec-4] ERREUR errors.GrailsExceptionResolver - MissingMethodException s'est produite lors du traitement de la demande: Aucune signature de méthode: com.SampleService.call() est applicable pour types d'arguments: (org.codehaus.groovy.grails.web.json.JSONObject) valeurs: Solutions possibles: wait(), any(), wait (long), any (groovy.lang.Closure), each (groovy.lang) .Fermeture), trouver(). Stacktrace suit: –

+1

Je suppose que 'sampleService (jq)' devrait être 'sampleService.updateProduct (jq)'. – moeTi

Répondre

2

Vous essayez d'appeler l'objet de service comme méthode.

sampleService(jq) devrait être sampleService.updateProduct(jq)

+0

Omg comment ai-je raté cette chose :) erreur stupide Merci beaucoup pour la réponse rapide. Maintenant, ça marche. –

Questions connexes