Skip to content

SpringMVC返回XML的处理

Zeyes Lee edited this page Nov 29, 2024 · 1 revision

接入视频号/微信小店依赖后,Spring MVC返回XML的处理

如果你使用开放平台接入微信小店,并且回调选择了XML的消息格式,那么需要引入jackson-dataformat-xml这个依赖,如果在Spring MVC层又引入了本项目的依赖,那么SpringMVC的默认返回会受到影响。

以下是一些关于这个的一些讨论:

最佳的解决方案就是,服务层和表现层分离,不要直接在表现层引入WxJava相关的包,通过封装VO的方式解耦

如果非要一锅端,也有解决方法,问题不大,下面代码可以直接抄。

/**  * 解决引入jackson-dataformat-xml导致的xml转换问题  *  * @author <a href="https://github.com/lixize">Zeyes</a>  */ @Configuration public class WebInterceptorAdapter implements WebMvcConfigurer { @Override public void extendMessageConverters(List<HttpMessageConverter<?>> aConverters) { aConverters.removeIf (aConverter -> (aConverter instanceof MappingJackson2XmlHttpMessageConverter)); } @Override public void configureContentNegotiation(ContentNegotiationConfigurer configurer) { configurer.defaultContentType(MediaType.APPLICATION_JSON); } }

Clone this wiki locally