2015-05-06 1 views
1

Я пытаюсь использовать Tuleap REST API со SpagoBI и не может найти никакой информации.Возможно ли получить данные из API REST в SpagoBI?

Итак, можно ли получить данные от REST API в SpagoBI?

Спасибо за ваш ответ,

Sandra

+0

Я также заинтересован в этой возможности. Я подозреваю, что это можно сделать с легкостью с помощью набора данных soagobi на основе скриптов, в паре. Я пытаюсь использовать тот же подход с использованием веб-службы на основе мыла в качестве набора данных, поскольку функция набора данных веб-сервиса неадекватно документирована. – dbh

ответ

0

Да, это возможно. Я потратил некоторое время, пытаясь заставить это работать. Ниже приведена ссылка на технику, которая сработала для меня.

Вкратце: Я использую набор данных скрипта, язык Groovy и библиотеку веб-сервисов Groovy WSLite. Это потребовало обновления версии Groovy, поставляемой с SpagoBI, и сбрасывания в библиотеке Groovy WSLite.

  1. Отлич- сценарий извлекает любые параметры, передаваемые
  2. делает веб-сервиса звонки с параметрами
  3. разбирает результаты
  4. Создает вывод в формате DataSet XML SpagoBI в

SpagoBI DataSet REST Webservice via Groovy

//Sample code: Using Groovy and Groovy WSLite to call a RESTful web service 
//Then, the response is parsed and returned in SpagoBI DataSet's XML format 
import wslite.rest.* 

def param_ip = parameters['param_ip'] ?: '' 

def client = new RESTClient("http://ip-api.com/json/${param_ip.toString()}") 
def response = client.get()  
assert response.statusCode == 200  
def str = response.json 

""" 
<ROWS> 
    <ROW 
     params="${parameters['param_ip'].toString()}" 
     status="${str.status.toString()}" 
     country="${str.country.toString()}" 
     countryCode="${str.countryCode.toString()}" 
     region="${str.region.toString()}" 
     regionName="${str.regionName.toString()}" 
     city="${str.city.toString()}" 
     zip="${str.zip.toString()}" 
     lat="${str.lat.toString()}" 
     lon="${str.lon.toString()}" 
     timezone="${str.timezone.toString()}" 
     isp="${str.isp.toString()}" 
     org="${str.org.toString()}" 
     as="${str.as.toString()}" 
    /> 
</ROWS> 
""".toString() 
Смежные вопросы