我将 CXF 2.4 与 JAXB 结合使用。
我可以为我的 owm 类(例如 LWDate)的所有实例设置一个全局 XmlAdapter 吗?
我写了一个类:
public class LWDateAdapter extends XmlAdapter<Date, LWDate>
现在我必须在我计划与 CXF 一起使用的每个参数、方法或包上添加 @XmlJavaTypeAdapter
。例如。
@WebMethod void test (@WebParam(name="Birthdate") @XmlJavaTypeAdapter(LWDateAdapter.class) LWDate pBirthdate){}
我想问问 CXF/JAXB 总是将我的类 LWDate 绑定(bind)到 java.util.Date 是否可能?
更新:@XmlJavaTypeAdapter
从版本 2.4.4 according to that issue 开始在包级别上工作.
最佳答案
对于您的用例,在包级别使用 @XmlJavaTypeAdapter
注释是您的最佳选择。下面是我在 Joda-Time 中使用此策略的帖子类:
如果您有一个始终希望使用 XmlAdapter
处理的域类,您可以在类型级别使用 @XmlJavaTypeAdapter
注释:
关于java - 为不同包中的任何类全局注册 XmlAdapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7928168/