Использование службы JSON с Groovy для возврата List <Object> - PullRequest
1 голос
/ 04 ноября 2010

Простите, что это совершенно нубский вопрос - я оценивал проблему сегодня и подумал: «Это, вероятно, та вещь, в которой Groovy действительно действительно хорош».

Я пытаюсь создать быстрый POC, который демонстрирует преимущества сериализации объекта по сравнению с AMF по сравнению с JSON.(Я знаю о доступных сравнительных исследованиях, но мой клиент хочет больше доказательств).

Существует существующий сервис JSON, который в идеале я бы хотел вызывать из уровня сервиса Java, потребляяобъекты JSON и возвращают их как List<Object> обратно клиенту Flex, используя BlazeDS.

Я не уверен, насколько хорошо BlazeDS будет играть, выставляя Groovy-объект в качестве конечной точки обмена сообщениями, поэтому я решил, чтоМне может понадобиться обернуть мой сервис в оболочку Java, чтобы все было просто.

Т.е., я думаю, что это будет выглядеть примерно так ...

public class JSONService {
    // Probably something Groovy 
    IJSONDelegate jsonDelegate;

    public JSONService(IJSONDelegate jsonDelegate)
    {
         this.jsonDelegate = jsonDelegate
    }

    public Object loadJSON(String url)
    {
        return jsonDelegate.loadJSON(url);
    }
}

Учитывая, что Groovy является динамическим языком, это подходящий подход?

То есть, может ли Groovy десериализовать некоторый текст JSON в объект Groovy, который затем может быть передан через классы Java?

Могут ли быть проблемы с сериализацией этого класса?

Ответы [ 2 ]

0 голосов
/ 05 ноября 2010

Я не уверен, как это сделать с Groovy, но вы можете просто повторно использовать мой CensusServiceServlet . Он просто предоставляет набор данных через различные параметры сериализации (XML, JSON и AMF3).

0 голосов
/ 04 ноября 2010

Вам потребуется библиотека с именем json-lib, theres GroovyJsonBuilder и анализирует JSON в POJO.Для динамических объектов Groovy вам необходимо использовать класс Expando.

http://json -lib.sourceforge.net /

...