BPEL流程监控目录

问题描述:

我正在尝试编写一个BPEL流程来监控文件到达的本地目录,并对该文件执行某些操作。我使用Jboss EAP 6.4作为我的服务器,Switchyard作为我的BPEL运行时和Jboss Developer Studio作为我的IDE。一般来说,我对BPEL和Web服务非常陌生。我花了最近几周试图了解我需要做什么,但无济于事。我最初的想法是创建一个java web服务来监视目录,然后让它调用一个BPEL流程来对文件执行某些操作。我想知道是否我甚至需要一个服务来做到这一点,或者如果您可以在BPEL本身内部完成。我将使用BPEL来调用将使用该文件的服务。任何帮助将非常感激。BPEL流程监控目录

BPEL具有触发给定处理的事件的概念。有定时器,闹钟和传入消息。传入的消息在通常的编程语言中就像一个switch语句。

因此,您不能直接在BPEL流程中监听文件系统。你需要做的是创建一个监听器(用你想要的任何语言),并在出现一个新文件时调用你的BPEL流程。 BPEL只是关于链接对Web服务的调用。或者,如果您愿意,BPEL只是一种实现Web服务的方式,可以在其他Web服务之间建立连接。 BPEL流程背后的逻辑仅仅是创建,转换邮件并将邮件路由到正确的“收件人”。除了将文件(名称,参考,内容...)传递给其他Web服务,您的BPEL流程将无法做更多工作。如果文件内容是XML文件,您可以对其内容执行一些操作(感谢XPath),但我不知道它是否是您的用例。

看着Switchyard,我看到他们使用Apache Camel。 所以,我想你必须能够配置骆驼组件来实现你想要的。他们提供的编辑器看起来像Eclipse.org上的SCA编辑器。我不知道这个解决方案,但我会尝试在这个编辑器中创建一个组件,使用“文件”绑定来引用(调用入口点)并查看我们可以对此进行调用。我怀疑Switchyard能够“生成”侦听器和新文件出现时调用的进程。但在这种情况下,我们不再真正在做BPEL。它超越了。

+0

谢谢!这清除了很多东西。 –