我使用Spring Cloud AWS消息傳遞使用SQS發送/接收消息。spring-cloud-aws Spring創建SQS不支持的消息頭屬性
我的代碼看起來是這樣的:
@SpringBootApplication
@Import(MessagingConfig.class)
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
@Configuration
public class MessagingConfig {
@Bean
public QueueMessagingTemplate queueMessagingTemplate(AmazonSQS amazonSqs, ResourceIdResolver resourceIdResolver) {
return new QueueMessagingTemplate(amazonSqs, resourceIdResolver);
}
}
發件人代碼是這樣的(經由控制器有線):
@Component
public class Sender {
@Autowired
private QueueMessagingTemplate queueMessagingTemplate;
public void send(MyMessage message) {
queueMessagingTemplate.convertAndSend("testQueue", message);
}
}
我有一個application.yaml
文件,定義,似乎該AWS參數正確加載。所以,當我運行這個程序,我碰到下面的警告/錯誤:
Message header with name 'id' and type 'java.util.UUID' cannot be sent as message attribute because it is not supported by SQS.
是否有東西,我做錯了,或有與Spring爲SQS創建消息的方式的問題嗎?