SpringMVC3.0:在方法arg中避免显式JAXBElement包装器
我有以下方法,希望避免显式显示JAXBElement语法。是否有某种注释允许该方法看起来接受原始MessageResponse对象,但实际上工作原理与下图相同?我不确定这有多清楚,所以我要说:我在寻找一些语法糖:SpringMVC3.0:在方法arg中避免显式JAXBElement包装器,spring,jaxb,spring-integration,Spring,Jaxb,Spring Integration,我有以下方法,希望避免显式显示JAXBElement语法。是否有某种注释允许该方法看起来接受原始MessageResponse对象,但实际上工作原理与下图相同?我不确定这有多清楚,所以我要说:我在寻找一些语法糖: @ServiceActivator public void handleMessageResponse(JAXBElement<MessageResponse> jaxbResponse) { MessageResponse response = jaxbR
@ServiceActivator
public void handleMessageResponse(JAXBElement<MessageResponse> jaxbResponse) {
MessageResponse response = jaxbResponse.getValue();
MessageStatus status = messageStatusDao.getByStoreIdAndMessageId(response.getStoreId(), response.getMessageId());
status.setStatusTimestamp(response.getDate());
status.setStatus("Complete");
}
您可以使用参考指南中描述的解组转换器 改编自链中可用的文档:
<si-xml:unmarshalling-transformer unmarshaller="unmarshaller" />
这将为您提供一个域对象作为消息负载。@XmlRootElement in MessageResponse?此问题与Spring MVC无关,请编辑标题和标记。