【发布时间】:2016-10-22 06:01:43
【问题描述】:
我正在创建一个 Spring REST WS 端点(只需要公开一个外部 url)。客户希望我们在收到请求后立即确认(200 OK)并在后台处理它。客户端可以为不同的请求在请求正文中发送不同类型的 xml 有效负载。例如:在一个请求中,客户端可以发送员工数据以添加到 xml 有效负载中,而在另一个请求中,他们可以发送客户数据以进行进一步处理。
在最简单的解决方案中,我们可以这样做:
- 创建带有 JAXB 注释的 POJO(客户、员工) 通用抽象类;例如RequestPayload 什么的) 对应于每个可能的 xml 有效负载,
- 在控制器上检索 xml 有效负载作为字符串,确定根 元素名称(“员工或客户”...)和
使用我们的解组器(使用 JAXB 创建)来转换 xml 字符串 到员工/客户 POJO 实例并将此引用存储在 请求有效负载变量。
做进一步的服务器端处理..
只是不确定这是否是一个优雅的解决方案..
spring 是否为 MessageConverters 提供任何功能/扩展,让我们以更简洁/优雅的方式执行步骤 1-3?
提前致谢。
【问题讨论】:
标签: java xml spring spring-mvc jaxb