/***/
@Service
public class MessageTask {
private static final Logger
LOGGER = LoggerFactory.getLogger(MessageTask.
class)
; private static AsyncRestTemplate
restTemplate =
new AsyncRestTemplate()
; static {
restTemplate.setMessageConverters(Arrays.asList(
new FormHttpMessageConverter()
, new StringHttpMessageConverter()))
; } @Scheduled(fixedDelay =
2000)
public void send() { HttpEntity<MultiValueMap<String
, Object>> request = MessageUtils.getMessage()
; if (request ==
null) {
return; }
final String finalMsg = (String) request.getBody().get(
"content").get(
0)
; final String userId = (String) request.getBody().get(
"userId").get(
0)
; try {
// ListenableFuture<ResponseEntity<String>> future = restTemplate.postForEntity("http://xxx.com/api/mail.aspx?name=newMail", request, String.class); ListenableFuture<ResponseEntity<String>> future =
restTemplate.postForEntity(
"http://xxx.com/api/mail.aspx?name=newMail", request
, String.
class)
; future.addCallback(
new ListenableFutureCallback<ResponseEntity<String>>() {
@Override public void onSuccess(ResponseEntity<String> result) {
LOGGER.debug(result.getBody())
; }
@Override public void onFailure(Throwable t) {
LOGGER.error(
"userId:" +
userId +
",msg:" +
finalMsg +
",exception:" + t.getMessage()
, t)
; } })
; }
catch (Exception e) {
LOGGER.error(
"userId:" + userId +
",msg:" + finalMsg
, e)
; } } }
转载于:https://www.cnblogs.com/wangdaijun/p/6381621.html