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

how to create query,send events and listen for query results from java in WSO CEP?

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

我不太清楚你的要求,但想到了以下两个选项通知你:

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

  2. 将'Siddhi'用作库。 WSO2 CEP 包含一个事件处理引擎,称为 'Siddhi',它是用 Java 编写的。您可以将 Siddhi 用作 java 库。 请参阅 [3] 中托管的样本 java 代码。此外,您可以参考博客 post [4](请注意,博客 post 指的是旧版本的 Siddhi)。

更新: 根据您的评论,我认为您需要做的是使用 WSO2-CEP 服务器公开的 'Admin Services' 。参考[5]中对'Admin Services'的介绍。 您可以参考其中一个集成测试用例[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