我正在创建一个Spring REST WS端点(只需要暴露一个外部URL)。客户希望我们在收到请求后立即确认(200 OK)并在后台处理。客户端可以在请求主体中为不同的请求发送不同类型的xml有效负载。例如:在一个请求中,客户端可以发送Employee数据以添加xml有效负载,而在其他请求中,他们可以发送客户数据以进行进一步处理。
在最简单的解决方案中,我们可以这样做:
使用我们的unmarshaller(使用JAXB创建)来转换xml String 到Employee / Customer POJO实例并将此引用存储在 RequestPayload变量。
进行进一步的服务器端处理..
不确定这是否是一个优雅的解决方案..
Spring是否为MessageConverters提供了任何功能/扩展,让我们能够以更干净/更优雅的方式完成步骤1-3?
提前致谢。
答案 0 :(得分:1)
您的问题看起来像EIP Content-Based Router。 Camel可以通过检查"优雅"中的消息体来帮助您将消息路由到不同的端点。方式和弹簧支持骆驼非常棒。
骆驼的美感可以将您的业务逻辑中的路由等问题分开,您可以在以后添加更多的邮件格式,而不会影响业务逻辑。