如何在WSO CEP中创建查询,发送事件和监听java中的查询结果?

时间:2015-02-05 05:44:36

标签: java wso2 complex-event-processing wso2cep

我阅读了网站上提供的文档,但它没有提供有关如何连接到服务器并从java访问其CEP功能的信息。例如,它是否接受POJO作为事件模型还是只是xml? 我们可以从java创建事件模型和查询吗?如果是这样,以及如何从java中获取结果?

1 个答案:

答案 0 :(得分:1)

我对你的要求不是很清楚,但想到告诉你以下两个选项:

  1. 使用java客户端发送事件,让wso2-cep服务器进行处理。 在这种情况下,查询不是在您的Java代码中定义的,而是由您在cep服务器中定义的(它们是类似SQL的查询)。您只需编写一个java-client来将事件发送到CEP服务器。 请参阅示例java代码[1],它是CEP示例[2]中使用的Java客户端(请参阅“执行示例”部分中的步骤2)。

  2. 使用'Siddhi'作为库。 WSO2 CEP包含一个名为'Siddhi'的事件处理引擎,它是用Java编写的。您可以将Siddhi用作Java库。 请参阅[3]中托管的示例Java代码。另外,你可以参考博客文章[4](请注意博客文章是指旧版Siddhi)。

  3. 更新: 根据您的评论,我认为您需要做的是使用WSO2-CEP服务器公开的“管理服务”。请参阅[5],其中介绍了“管理服务”。 您可以参考其中一个集成测试用例[6]来了解管理服务的用法。

    希望这会有所帮助......

    [1] https://svn.wso2.org/repos/wso2/carbon/platform/branches/turing/products/cep/3.1.0/modules/samples/producers/service-stats

    [2] https://docs.wso2.com/display/CEP310/Sample+0001+-+Simple+Pass-through+with+WSO2Event

    [3] https://svn.wso2.org/repos/wso2/people/dilini/siddhi_sample/siddhi-examples.zip

    [4] http://suhothayan.blogspot.com/2013/01/using-siddhi-cep-as-java-library.html

    [5] https://docs.wso2.com/display/CEP310/Calling+Admin+Services+from+Apps

    [6] https://github.com/wso2/product-cep/blob/master/modules/integration/tests-integration/tests/src/test/java/org/wso2/carbon/integration/test/processflow/EventFlowTestCase.java