Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 526201
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T08:45:04+00:00 2026-05-13T08:45:04+00:00

Is there a way to coerce the result row gotten from calling a stored

  • 0

Is there a way to coerce the result row gotten from calling a stored procedure into a specific object so I can pass just a list of that object into the view?

I know I can use things like Node.list() to do this, but I am eventually going to replace getnodes() with a fairly complicated stored procedure that creates temp tables and does some optimised sql fu. But for now I am just working on the grails interaction.

So on MySQL side I have the following stored procedure:

CREATE DEFINER=`root`@`255.255.255.255` PROCEDURE `getnodes`()
BEGIN
   select * from node;
END

On the grails controller I have the following:

def nodes = new ArrayList<Node>()

// collect all the nodes returned
sql.eachRow("{call getnodes()}") { 
    nodes.add(it as Node)
}

println "Nodes size is: " + nodes.size()
nodes.eachWithIndex { d, i ->
    println "$i : $d"
}

My plan is to then pass the nodes to the view.

The problem is that it blows up on the line:

nodes.add(it as Node)

Is this even possible? I mean this should just coerce right? What am I doing wrong?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T08:45:04+00:00Added an answer on May 13, 2026 at 8:45 am

    No, it shouldn’t “just coerce”. Regarding the following:

    sql.eachRow("{call getnodes()}") { 
        nodes.add(it as Node)
    }
    

    The type of it is GroovyRowResult, so it as Node will call GroovyRowResult.asType(Node.class)

    So this coercion will fail unless the author of this method specifically handles this conversion. As converting from GroovyRowResult to Node is fairly obscure, I don’t think one should reasonably expect this case to be handled.

    An obvious solution is to do the conversion yourself:

    sql.eachRow("{call getnodes()}") {GroovyRowResult it ->
    
        Node node = // TODO: Code to convert it to a Node 
        nodes.add(node)
    }
    

    Alternatively, you could use meta-programming to override the asType method of GroovyRowResult such that it also handles conversion to Node.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Is there way that I can read the file from remote server using fopen
Is there way to get file from windows xp command prompt? I tried to
Is there way to copy a file into Plone with WebDAV and have Plone
is there way how to get name ov event from Lambda expression like with
Is there any way I can set a formatter on models that will convert
Is there way to print from Apple and Android mobile browsers via bluetooth. I
Is there way in MySQL to create DATETIME from a given attribute of type
Is there way to rewrite: var tbl = ds.TABLES; var q = from c
is there way thats i can preselect an item when the page loads or
Is there way to automatically maximize the output window on hitting build and then

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.