1

我有以下方法,并希望避免显式显示 JAXBElement<> 语法。是否有某种注释可以让该方法看起来接受原始 MessageResponse 对象,但实际上与下面所示的工作方式相同?我不确定这有多清楚,所以我会这样说:我正在寻找一些语法糖 :)

    @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");
}
4

1 回答 1

0

您可以使用此处参考指南中描述的解组转换器。

改编自文档(可在链中使用):

<si-xml:unmarshalling-transformer unmarshaller="unmarshaller" />

这应该为您提供一个域对象作为消息有效负载。

于 2010-05-14T05:13:42.913 回答