Can JLink return a structured object?

What I want to achieve seems obvious but I cannot figure it out:

I need to find a way that when I send an expression to be evaluated from a Java back end to a Mathematica kernel, I can live with it being a string. but in going the other way I would get back a structured object, preferably JSON or even a java object, not a string :frowning:

I am pretty sure there must be a way, but I have scoured the interwebs and I can’t seem to find it. Any pointers or help would be invaluable.