Как вывести JSON из Pentaho xaction? - PullRequest
3 голосов
/ 21 января 2011

Какой лучший способ получить предложение Pentaho для возврата его вывода в формате JSON?

У меня есть панель управления, управляемая действиями Пентаго, которые возвращают фрагменты (таблицы) HTML, которые я затем вставляю на страницу. Это работает нормально, но я бы хотел, чтобы мои xaction возвращали JSON вместо фрагментов HTML, чтобы сделать вещи более гибкими и многократно используемыми.

Спасибо.

Ответы [ 2 ]

5 голосов
/ 23 января 2011

Образец доступен здесь

http://sandbox.pentaho.com/api-integration-samples/

Сообщите нам, как у вас дела

Майк Таралло, директор по продажам инженера Pentaho

3 голосов
/ 22 января 2011

Чак,

Существует несколько способов добавить сервис в Pentaho BIServer (что, как я полагаю, вы делаете, если хотите вернуть JSON).Какой из них использовать, зависит от того, насколько хорошо вы знаете Java, и насколько глубоко вы хотите проникнуть во внутреннюю работу.

Опция a: написать xaction, использующий компонент JavaScriptRule.С помощью написанного там JavaScript вы можете делать все, что захотите, включая запись всего, что пожелаете, в http-ответ.Вероятно, это самый быстрый, но, возможно, грязный и наименее обслуживаемый способ выполнить то, что вы хотите

Вариант b: написать плагин BIServer.Один из многих аспектов плагинов BIServer, который вы можете написать, заключается в том, чтобы сделать именно это, подключить новый вид сервиса.Многие из подключаемых сообществом плагинов делают именно это.Посмотрите, например, на pentaho-cda (http://code.google.com/p/pentaho-cda/). Для получения информации о том, как написать плагин BIServer, см. http://wiki.pentaho.com/display/ServerDoc2x/Developing+Plugins. В опции b, вам нужно помнить, какую версию BIServer вы хотите развернуть, так какПлагин API немного меняется от выпуска к выпуску. Короткий рассказ здесь: если вы планируете развертывание на 3.7 или более ранней версии, вы хотите написать ContentGenerator. Если вы можете отложить до следующего основного выпуска (иначе Sugar), то выиметь в своем распоряжении более приятные вещи, такие как возможность подключить реальный HttpServlet или даже аннотированный класс JaxRS (см. вики-документ).

Наконец, ## pentaho в freenode IRC - отличное место для вопросов.

Надеюсь, это поможет, Аарон

...