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 に答える