2009-11-25 2 views
0

Я работаю в GWT. В настоящее время мое требование прост. Я хочу JSON в следующем формате:Создание объекта для ожидания Json

{":question" : { ":id":"123", ":question_text":"some text", ":nodes":["123","111"]}} 

Мне нужно создать объект в GWT кода таким образом, что, когда я использую плагин JQuery JSON, чтобы разобрать этот объект; Я должен получить выше перечисленных json. Этот json нужно отправить в удаленный сервис.

В настоящее время я попытался использовать Java Hashmaps и пользовательские объекты Java, смоделированные для этих атрибутов, но у них всегда есть метаданные в сгенерированном JSON, и я просто не могу получить этот формат.

Было бы здорово, если бы кто-нибудь мог предложить, как я мог бы моделировать этот объект данных таким образом, чтобы получить JSON, как и ожидалось.

Или я могу просто написать простой пользовательский парсер JSON в Javascript? Как мне это сделать?

веселит -Priyank

+0

Ваш вопрос очень неясен. Что ты пытаешься сделать? Создает ли ваше приложение GWT JSON? JSON - это протокол для сериализации объектов для строк и наоборот. –

+1

Да, очень неясно. Если вам просто нужен JSON, тогда напишите его в строке и передайте это в собственный код javascript, который вызывает jquery. Объекты GWT всегда будут содержать дополнительные вещи, поскольку они не просто обычное сопоставление с читаемой строкой JSON, и все члены и классы все равно становятся запутанными. –

+0

Да, мне просто нужен был json, и, наконец, я передал его обратно в родном методе. Первоначально я просто искал, как обеспечить, чтобы я получал точный JSON при предоставлении объекта без метаданных, помещаемых в объект. Возможно, http://code.google.com/p/gwt-jsonizer/ это сработало бы; но я никогда не пытался это попробовать. – Priyank

ответ

2

Просто бросить его там, есть несколько JSON Java библиотеки, которые довольно просто и красиво. Два у меня есть большая часть моего опыта являются:

Выгода для обоих (и большинство других библиотек JSON для Java) является то, что они обращаются с сортировочной наиболее собственный объект Java типы к разумным эквивалентам JSON - другими словами, они упрощают добавление содержимого переменной в структуру JSON, независимо от того, является ли переменная целой, длинной, строковой, логической, любой. Поэтому с JSON-Lib вы можете построить свой пример как таковой:

int id = 123; 
String questionText = "some text"; 
int[] nodes = new int[] { 123, 111 }; 

JSONObject question = new JSONObject(); 
question.put(":id", id); 
question.put(":question text", questionText); 
question.put(":nodes", nodes); 
JSONObject json = new JSONObject(); 
json.put(":question", question); 

String jsonString = json.toString(); 
Смежные вопросы