DWR 利用 Converters 来实现 客户端与服务端 的数据之间的 marshaling back and forth。默认有一些 converters 已经启用了,也能够创建新的 converters。
基本的 converters 包括用于 primitive types、strings、以及下面的一些对象:
. 来自java.lang包:Character、Boolean、Byte、Short、Integer、Long、Float、Double。
. 来自java.meth包:BigInteger、BigDecimal。
. java.util.Date,以及java.sql包中的Date、Time、Timestamp。
DWR 还有一些用于数组(of all aforementioned objects)、JavaBeans and Objects,collections(Map和Collection)、DOM 对象、Enums,以及其他的一些例如Servlet对象和Hibernate beans的converters。
定制 converter 需要实现 Converter 接口。这个不常用。因为 BeanConverter 对于许多自定义对象都能够工作(如果它们都是符合javaBean规范)。