-
-
Notifications
You must be signed in to change notification settings - Fork 8.7k
SpringMVC返回XML的处理
Zeyes Lee edited this page Nov 29, 2024
·
1 revision
如果你使用开放平台接入微信小店,并且回调选择了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);
}
}