diggbag

BlogJava 联系 聚合 管理
  0 Posts :: 13 Stories :: 6 Comments :: 0 Trackbacks

1.在使用jaxbMarshaller生成xml的过程中,有java bean如下使用到了泛型:

@XmlRootElement(name = "ReturnInfo")
@XmlType()
public class ReturnInfo<T> {

private List<T> resultList;

 public List<T> getResultList() {

  return resultList;
 }

 public void setResultList(List<T> resultList) {

  this.resultList = resultList;
 }

}

2.在最初测试的时候jaxbMarshaller报异常,无法找到处理泛型的办法。

3.在使用jaxb时需要在java bean打上@XmlSeeAlso(MultiQueryInfo.class)注释,作用就是是在jaxb绑定一个class时候可以使用

其他的class,在jaxb使用多态的时候都需要用到此标签;其中括号中可以添加多个class,如@XmlSeeAlso(A.class,B.class)

4.在客户端的bean中也需要用到此注释,否则同样报转换错误:

Exception in thread "main" java.lang.ClassCastException: com.sun.org.apache.xerces.internal.dom.ElementNSImpl cannot be cast to com.jd.fms.adsettlement.client.domain.MultiQueryInfo

posted on 2012-07-12 19:04 哲同 阅读(7914) 评论(0)  编辑  收藏 所属分类: java相关

只有注册用户登录后才能发表评论。


网站导航: