为了账号安全,请及时绑定邮箱和手机立即绑定

Esper部署错误:静态方法的返回类型无效,需要Java类

Esper部署错误:静态方法的返回类型无效,需要Java类

跃然一笑 2021-04-28 10:10:32
我的应用程序配置并部署了一个esper引擎,该引擎解析以字符串形式存储在MySQL数据库中的epl模块。一切正常,除了我尝试从epl模块调用静态方法时。在部署引擎时出现以下错误:DeploymentActionException:表达式'select ...'中模块'MyModule'的部署失败:错误的开始语句:类'MyClass'的静态方法'myMethod'的返回类型无效,需要Java班级。方法如下:public static String myMethod() {    String symbol = "GOOG";    logger.info("Hello From EPL");    return symbol;}这是引擎配置和模块部署:Configuration configuration = new Configuration();        configuration.addEventType("MyEvent", MyEvent.class);        configuration.addImport(com.tp.main.MyClass.class);        epService = EPServiceProviderManager.getProvider("Service", configuration);        EPDeploymentAdmin deploymentAdmin = epService.getEPAdministrator().getDeploymentAdmin();        Module module = deploymentAdmin.parse(epl);        String moduleId = deploymentAdmin.add(module);        deploymentAdmin.deploy(moduleId, null);这是epl模块:module MyModule; select propertyA, propertyB from MyEvent as propertyA unidirectional, method:MyClass.myMethod as propertyBMyEvent具有用于返回字符串的propertyA的吸气剂。我已经阅读并重新阅读了文档的内容。看起来一切正常。我在网上找到了一些例子,进一步表明一切都很好。但是我无法克服这个错误。我尝试将导入移动到epl模块。我尝试将POJO事件更改为Map事件,然后再返回。我尝试在epl模块中创建架构,并使用运行时API来配置事件类型,然后再次返回。如果我取消此方法调用,那么一切都可以和epl模块中的其他语句(未显示)一起使用。我想念什么?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 159 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信