将 spring webflow 应用程序公开为 Web 服务

Exposing spring webflow application as a web service

是否可以将构建在 spring webflow 上的整个应用程序公开为 Web 服务?如果可以的话,创建一个终点在行动 class 或 DAO class 是否更有意义?如何使用 Web 服务处理流程?

Web Flow 用于与用户进行多步、有状态的交互。通常不是 Web 服务的用途。

您当然可以将 Spring MVC 控制器用于(HTTP 类型)Web 服务,并将它们混合到您还具有用于用户交互的 Spring Web 流的同一应用程序中。

我们正在为一个应用程序执行此操作,在该应用程序中,合作伙伴站点通过 Web 服务调用与我们建立交易,然后将他们的用户重定向到我们的流程,以便在整个流程的一部分直接与我们交互。

(与你的另一个问题类似

我们已经完成了一些工作,其中 webflow 本身基本上公开为 RESTful(ish)API。视图状态是 collection+json 有效负载,带有对转换进行建模的超媒体链接。我不太了解动作与 DAO class - 对我们来说,视图状态是返回给客户端的有效负载 - 动作对客户端不可见。 在默认情况下,RESTful SWF 本质上存在一些陷阱 - 因此我们进行了相当多的 subclass,并定义了我们自己的 FlowController subclass 来处理 URI 和 HTTP 动词.