运行 Spring Boot Camel inside Jboss Fuse

Running a Spring Boot Camel inside Jboss Fuse

我有一个应用程序 运行ning Spring Boot Camel,它使用来自 ActiveMQ 的消息并写入文件:

@Override
  public void configure() throws Exception {
    from("activemq:queue:MyQueue").to("file:/tmp/somemessages/");
  }

如果 运行 mvn spring-boot:run.

非常简单并且工作正常

但现在我需要生成一个 bundle jar 以安装在我的 RedHat Fuse OSGi 容器中。一切都已安装并启动,没有错误,请参阅:

所以,我的 camel-appActive 但是在我的 ActiveMQ Queue 中产生了一些消息之后没有任何效果我想,所以文件没有生成。

我怎样才能知道是否有问题?应用程序控制台日志或类似的东西?

这不是一个好的做法。 Spring Boot 用于 运行 Standalone。在基于 OSGi 的运行时,例如 Red Hat Fuse 或 Apache Karaf/ServiceMix,您应该部署 OSGi 应用程序,对于 Camel,它是 camel-blueprint(您也可以使用带有蓝图的 Java 路由)。因此,请查看如何执行此操作的示例,您可以查看 Red Hat Fuse 附带的示例。

How can i see if something is wrong ? Application Console Log or something like this ?

简单的答案是您可以 运行 通过 运行 在您的 shell 控制台中执行以下命令对您的包执行诊断命令:

bundle:diag {your-bundle-id}

您可以将{your-bundle-id}替换为图片中首选的bundle id 231。还有 a complete list of Apache Karaf commands 可能对进一步的要求有用。