List of usage examples for org.springframework.amqp.support.converter MessageConversionException getMessage
public String getMessage()
From source file:cu.uci.uengine.amqp.SubmitsListener.java
@Override public void onMessage(Message message, Channel channel) throws Exception { message.getMessageProperties().setHeader("__TypeId__", "cu.uci.uengine.model.dto.SubmissionDTO"); try {//from ww w. j ava 2s . c o m SubmissionDTO submissionDTO = (SubmissionDTO) jsonMessageConverter.fromMessage(message); Submission submit = new SubmissionDTOToSubmissionAdapter(submissionDTO); log.info(String.format("Working on submission: %s", submit.toString())); Submission result = engine.call(submit); log.info(String.format("Sending sid %s: %s. %s", result.getId(), result.getVerdict(), result.getErrorMessage() == null ? "" : result.getErrorMessage())); VerdictDTO verdict = new SubmissionToVerdictDTOAdapter(result); submitTemplate.convertAndSend(verdict, new MessagePostProcessor() { @Override public Message postProcessMessage(Message message) throws AmqpException { message.getMessageProperties().setHeader("__TypeId__", "UEngineVerdict"); return message; } }); channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); } catch (MessageConversionException messageConversionException) { channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, false); log.error(String.format("Wrong submission format: %s", messageConversionException.getMessage())); } catch (Exception ex) { channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, false); log.error(String.format("Error preocessing message with correlationId: %s", message.getMessageProperties().getCorrelationId())); } }
From source file:org.springframework.amqp.support.converter.DefaultJackson2JavaTypeMapperTest.java
@Test public void shouldThrowAnExceptionWhenClassIdNotPresent() { try {//from www. j av a 2 s. com javaTypeMapper.toJavaType(properties); } catch (MessageConversionException e) { String classIdFieldName = javaTypeMapper.getClassIdFieldName(); assertThat(e.getMessage(), containsString("Could not resolve " + classIdFieldName + " in header")); return; } fail(); }
From source file:org.springframework.amqp.support.converter.DefaultJackson2JavaTypeMapperTest.java
@Test public void shouldThrowAnExceptionWhenContentClassIdIsNotPresentWhenClassIdIsContainerType() { properties.getHeaders().put(javaTypeMapper.getClassIdFieldName(), ArrayList.class.getName()); try {/*w ww . j a va2s . c o m*/ javaTypeMapper.toJavaType(properties); } catch (MessageConversionException e) { String contentClassIdFieldName = javaTypeMapper.getContentClassIdFieldName(); assertThat(e.getMessage(), containsString("Could not resolve " + contentClassIdFieldName + " in header")); return; } fail(); }
From source file:org.springframework.amqp.support.converter.DefaultJackson2JavaTypeMapperTest.java
@Test public void shouldThrowAnExceptionWhenKeyClassIdIsNotPresentWhenClassIdIsAMap() { properties.getHeaders().put(javaTypeMapper.getClassIdFieldName(), HashMap.class.getName()); properties.getHeaders().put(javaTypeMapper.getKeyClassIdFieldName(), String.class.getName()); try {/* w w w .java 2s . c om*/ javaTypeMapper.toJavaType(properties); } catch (MessageConversionException e) { String contentClassIdFieldName = javaTypeMapper.getContentClassIdFieldName(); assertThat(e.getMessage(), containsString("Could not resolve " + contentClassIdFieldName + " in header")); return; } fail(); }