java - 任务 Hook 似乎不是 JSON 可序列化的

标签 java apache-storm

我有一个工作的 Storm 拓扑,我通过添加任务 Hook 对其进行了调整,现在我收到一条错误消息,指出我的配置不是 json 可序列化的。拓扑提交到LocalCluster时出现错误。

我怀疑我的问题是我没有正确配置任务 Hook 。在我的拓扑驱动程序类中,就在我提交拓扑之前,我这样做:

config.put(config.TOPOLOGY_AUTO_TASK_HOOKS, new RubeGoldbergTaskHook());

其中config的类型是backtype.storm.Config, 和 RubeGoldbergTaskHook 扩展了 BaseTaskHook

我是否没有正确设置 config.TOPOLOGY_AUTO_TASK_HOOKS 属性,或者我是否需要将我的 RubeGoldbergTaskHook 类修改为 JSON 可序列化?

最佳答案

这样使用。 它会工作...

List<String> hooksList= new ArrayList<String>();
hooksList.add(RubeGoldbergTaskHook.class.getName());
conf.put(Config.TOPOLOGY_AUTO_TASK_HOOKS, hooksList);

关于java - 任务 Hook 似乎不是 JSON 可序列化的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16922123/

相关文章:

java - RFC822 电子邮件 - Formatter - Android/iOS - 创建没有 session 或主机的 MimeMessage

java - 类路径包含多个 SLF4J 绑定(bind)

elasticsearch - ES 查询异常

javax.servlet.http.HttpServlet“找不到

java - 模式匹配器

amazon-web-services - Storm UI 超时错误

java - Storm Bolt 比其父级执行更多

java - 未在 Storm UI 中创建 Storm 拓扑

java - 如何强制我的文本在 JTextFrame 中右对齐?

Java 项目变得太大