当前位置:  开发笔记 > 编程语言 > 正文

Spring Integration 3.0.1 Restful http-inbound-gateway不会将请求主体转换为对象

如何解决《SpringIntegration3.0.1Restfulhttp-inbound-gateway不会将请求主体转换为对象》经验,为你挑选了0个好方法。

我试图使用Spring集成(3.0.1),以实现支持RESTful服务 XML和JSON请求和响应格式,使用INT-HTTP:入站网关.

我的代码基于Spring集成示例(尽管这不使用消息有效负载):

https://github.com/spring-projects/spring-integration-samples/tree/master/intermediate/rest-http

服务激活类:

@Service("httpOrderGateway")
public class HttpOrderGateway implements OrderGateway {

    private static final Logger LOGGER = Logger.getLogger(HttpOrderGateway.class);

    @Override
    public Message createOrder(Message orderRequest) {
        LOGGER.info("Received CreateOrderRequest headers: " + orderRequest.getHeaders());
        LOGGER.info("Received: " + orderRequest.getPayload());

        return MessageBuilder.withPayload(new CreateOrderResponse("Thank you for your order")).build();
    }

}

Spring集成XML:




      

    
    

    
    

    
        
        
            
                
                
                    
                        
                        
                    
                
            
        
        
            
                
                    
                
                
                    
                
            
        
    

    

    

    


目前,代码注销:

Received: Robert Pulson

(或等效的JSON格式),并根据Accept Header返回JSON或XML中的响应,以便该部分正常工作.

我已经阅读了以下基于以前版本的Spring Integration的类似问题:

Spring集成:http:入站通道适配器 - 不在有效负载中获取json对象

但是这使用了一个inbound-channel-adaptor,而不是inbound-gateway像我一样.

如何配置我inbound-gateway使用marshallerjaxbJacksonObjectMapper(来自相同的配置文件)将原始请求主体转换CreateOrderRequest为JSON/XML 的实例?

推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有