File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes HTML, CSS and JavaScript and the fly likes How to build and pass JSON objects back to a server? Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login


Win a copy of The Mikado Method this week in the Agile and other Processes forum!
JavaRanch » Java Forums » Engineering » HTML, CSS and JavaScript
Reply Bookmark "How to build and pass JSON objects back to a server?" Watch "How to build and pass JSON objects back to a server?" New topic
Author

How to build and pass JSON objects back to a server?

Max Tomlinson
Ranch Hand

Joined: Jul 17, 2001
Posts: 364
Hi all-
In our app, we are using seam remoting to pass objects to an xhtml client from our ejbs. This works very well but the client to server interaction is much more restricted and we can't pass complex objects back via seam.
So I need to send a collection of objects back to my java server ejb, format them as an XML doc and save.

I'm thinking of building JSON objects, posting them as a string and having my server side code use xstream to format xml.
I think this provides a structured interface compared to writing my own solution (hashmaps, name-value pairs, what-have-you).

Is there client side code that will help me do this in javascript? (build JSON objects?)
Or should I simply format the array of objects by hand into JSON? This doesn't seem too tough actually but I wanted to leverage any solutions already out there.

thanks!
Max
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 56204
    
  13

What browsers are you supporting? Modern browsers will possess JSON.stringify().


[Smart Questions] [JSP FAQ] [Books by Bear] [Bear's FrontMan] [About Bear]
Max Tomlinson
Ranch Hand

Joined: Jul 17, 2001
Posts: 364
Hi Bear-
Thanks for the reply. We are supporting the usual suspects - IE 7+, FF.
I think I need to get up to speed on JSON. I was at a loss how to create the objects on the client side. I thought I had to physically code the syntax e.g. "[ :" etc.

But it seems I create the objects and use eval: e.g. this sample:

var arrayAsJSONText = '["Europe", "Asia", "Australia", "Antarctica",
"North America", "South America", "Africa"]';
var continents = eval( arrayAsJSONText );
alert(continents[0] + " is one of the " + continents.length + "
continents.");

or as you suggest:

alert("The JSON representation of the continents array is: " +
continents.toJSONString());

But I need objects with member variables e.g. a column object (one of our application objects) which contain various fields: width, alignment, etc. I want it to map to a pojo so I can pass it to the server and convert it to a pojo.

thanks

Max

Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 56204
    
  13

Yeah, JSON supports that. You seem to be focused on arrays only. Visit json.org for a lot of info on JSON.
 
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to run our stuff on 16 servers instead of 3.
 
subject: How to build and pass JSON objects back to a server?
 
Similar Threads
Head Rush Ajax and JSON
Undefined on jQuery Ajax Request
seam remoting: can I pass a pojo FROM a client TO a session bean?
Finding special characters in a JS string?
GWT in Action : Is it the book for beginners