如何在 JodaTime 支持下将 Object 转换为 Xml?

How to convert Object to Xml in mule with JodaTime support?

我正在尝试使用 mule Object-To-XML 的组件将对象转换为 mule 中的 xml。但是,我的对象有一个 jodatime 属性,并且因为那个 mule 正在返回一个 jodatime 对象。但是,这不是我所期待的。我期待的是一个日期,而不是 jodatime 的整个对象。以下是 mule 返回的内容:

<date>
            <iMillis>1449676220125</iMillis>
            <iChronology class="org.joda.time.chrono.ISOChronology" resolves-to="org.joda.time.chrono.ISOChronology$Stub" serialization="custom">
                <org.joda.time.chrono.ISOChronology_-Stub>
                    <org.joda.time.UTCDateTimeZone resolves-to="org.joda.time.DateTimeZone$Stub" serialization="custom">
                        <org.joda.time.DateTimeZone_-Stub>
                            <string>UTC</string>
                        </org.joda.time.DateTimeZone_-Stub>
                    </org.joda.time.UTCDateTimeZone>
                </org.joda.time.chrono.ISOChronology_-Stub>
            </iChronology>
</date>

但是,我想要类似于

的东西
<date>2015-12-16T16:20:30.659-02:00</date>

问题:如何正确转换jodatime?

在Whosebug上搜索后,我发现了以下question

所以,要解决这个问题,你应该:

1- 根据上面发布的问题的答案创建 class 2- 在连接器 Object-To-XML 上,您应该添加 Converter,即您刚刚创建的 class。

之后,XML 将按照预期的方式输出。