Java Web 服务: Axis2 中的 JAXB 和 JAX-WS
2009-11-05 00:00:00 来源:WEB开发网“Java Web Services: Axis2 Data Binding” 并没有展示针对不同数据绑定的服务器接口代码,但是如果您比较 清单 3 和从上文下载的代码,就会发现清单 3 非常接近于 ADB 和 JiBX 封装器例子,同样,惟一的区别在于使用了 Java 5 的类型类别而没有使用数组。
JAXB 数据模型类
清单 4 展示了通过运行 WSDL2Java 生成的 JAXB 数据模型类(生成的大多数注释已被删除,只留下少量注释作为例子)。生成的数据模型类对于客户机和服务器都是相同的,即使是由项目构建单独创建的。显示的类用于 清单 2 的客户机代码和 清单 3 的服务器代码中的 getBook 调用。每个类定义上的注释(用粗体显示)和大部分字段定义提供了配置信息,供 JAXB 用于控制对象与 XML 的转换。
清单 4. JAXB 数据模型类
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"isbn"
})
@XmlRootElement(name = "getBook")
public class GetBook {
@XmlElement(required = true)
protected String isbn;
/**
* Gets the value of the isbn property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getIsbn() {
return isbn;
}
/**
* Sets the value of the isbn property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setIsbn(String value) {
this.isbn = value;
}
}
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "BookInformation", propOrder = {
"author",
"title"
})
public class BookInformation {
protected List<String> author;
@XmlElement(required = true)
protected String title;
@XmlAttribute(required = true)
protected String type;
@XmlAttribute(required = true)
protected String isbn;
public List<String> getAuthor() {
if (author == null) {
author = new ArrayList<String>();
}
return this.author;
}
public String getTitle() {
return title;
}
public void setTitle(String value) {
this.title = value;
}
public String getType() {
return type;
}
public void setType(String value) {
this.type = value;
}
public String getIsbn() {
return isbn;
}
public void setIsbn(String value) {
this.isbn = value;
}
}
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"getBookReturn"
})
@XmlRootElement(name = "getBookResponse")
public class GetBookResponse {
protected BookInformation getBookReturn;
public BookInformation getGetBookReturn() {
return getBookReturn;
}
public void setGetBookReturn(BookInformation value) {
this.getBookReturn = value;
}
}
更多精彩
赞助商链接