Веб-сервисы в Сиддхи

У меня есть веб-сервисы (REST). Я хочу вызывать WS каждый раз, когда на мой поток приходит событие.

Мне нужно создать расширение Siddhi и вызвать веб-сервис из java?

Если мне нужна java для вызова веб-службы, должен ли я расширить «Агрегатную функцию»?

В Siddhi существует какая-либо инструкция, которую я могу использовать для вызова веб-службы?

Далее приведен образец моего WS:

http://72.37.125.125:3000/фишинг?url=www.innerjoin.co

Спасибо за ваши комментарии


person ROBY HERNAN RUBIANO    schedule 27.05.2016    source источник


Ответы (2)


Вы сможете использовать издателя событий HTTP[1] для достижения этого OOTB без написания собственного кода. Используя этот издатель, вы можете отправлять запросы PUT/POST на предварительно определенный URL-адрес с настраиваемой полезной нагрузкой. Создайте HTTP-издатель, как указано в общей документации. Затем вы можете использовать пользовательское сопоставление json для создания принятой полезной нагрузки для вашего веб-сервиса. Когда вы создаете пользовательское сопоставление, вы можете ссылаться на атрибуты событий внутри фигурных скобок следующим образом.

{
   "payload_name_for_webservice":{{attribute_name_in_event}},
}

[1]https://docs.wso2.com/display/CEP400/HTTP+Event+Publisher

person Tishan    schedule 30.05.2016

Спасибо.

но у меня есть ресивер и другой издатель.

я хочу вызвать свой WS из siddhi, когда прибудет новое событие в "org.wso2.event.sensor.stream:1.0.0", входным параметром для веб-службы является "meta_sensorName"

как я могу это сделать?

Мой код таков:

/* Enter a unique ExecutionPlan */
@Plan:name('ExecutionPlan')

/* Enter a unique description for ExecutionPlan */
-- @Plan:description('ExecutionPlan')

/* define streams/tables and write queries here ... */

@Import('org.wso2.event.sensor.stream:1.0.0')
define stream sensorStream (meta_timestamp long, meta_isPowerSaverEnabled bool, meta_sensorId int, meta_sensorName string, correlation_longitude double, correlation_latitude double, humidity float, sensorValue double);
person ROBY HERNAN RUBIANO    schedule 30.05.2016
comment
Является ли этот входной параметр параметром запроса или он находится в полезной нагрузке? - person Tishan; 03.06.2016
comment
meta_sensorName — это полезная нагрузка org.wso2.event.sensor.stream . - person ROBY HERNAN RUBIANO; 03.06.2016
comment
Что мне нужно знать, так это то, является ли meta_sensorName параметром запроса или полезной нагрузкой в ​​вашем вызове веб-службы. - person Tishan; 05.06.2016
comment
meta_sensorName — входной параметр для моих веб-сервисов. например: 72.37.125.125:3000/phishing?url=‹value-meta_sensorName> - person ROBY HERNAN RUBIANO; 06.06.2016
comment
Ты не можешь этого сделать, Роби. В настоящее время динамические атрибуты в URL не поддерживаются. Динамические атрибуты поддерживаются только в полезной нагрузке. - person Tishan; 07.06.2016