Spring integration SQS的Spring集成划分

Spring integration SQS的Spring集成划分,spring-integration,spring-batch,amazon-sqs,Spring Integration,Spring Batch,Amazon Sqs,我正在尝试设置spring集成分区 我正在使用stack spring批处理和集成以及AWS SQS 主-网格大小的完整分区 主-将对象(StepExecutionRequest)传输到JSON (@Transformer ObjectToJsonTransformer) 主-发送SQS 从属-接收SQS 从-将JSON传输到对象(StepExecutionRequest) (@Transformer-jsontobjecttransformer) 然后,出现异常: 2018-06-22 17:

我正在尝试设置spring集成分区

我正在使用stack spring批处理和集成以及AWS SQS

  • 主-网格大小的完整分区

  • 主-将对象(StepExecutionRequest)传输到JSON (@Transformer ObjectToJsonTransformer)

  • 主-发送SQS

  • 从属-接收SQS

  • 从-将JSON传输到对象(StepExecutionRequest) (@Transformer-jsontobjecttransformer)

  • 然后,出现异常:

    2018-06-22 17:40:55.578 ERROR 33730 --- [ask-scheduler-1] o.s.integration.handler.LoggingHandler   : org.springframework.integration.transformer.MessageTransformationException: failed to transform message; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `org.springframework.batch.integration.partition.StepExecutionRequest` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
    
    也就是说,
    StepExecutionRequest
    无法反序列化,因为
    stepExecutionReqest
    不是setter


    如何解决这个问题?

    StepExecutionRequest
    不适合使用现成的JSON进行序列化;如错误所示,它没有默认构造函数。改用Java序列化,或者编写一个定制的jackson
    JsonDeserializer

    是时候改进Spring批处理了吗?我已经就此事提出了一个JIRA:请看。我决定制作定制Transformer(JsonToStepExecutionRequestTransformer by JSONTObObjectTransformer)谢谢@Gary Russell