WEB开发网
开发学院软件开发Java Java Web 服务: Axis2 中的 JAXB 和 JAX-WS 阅读

Java Web 服务: Axis2 中的 JAXB 和 JAX-WS

 2009-11-05 00:00:00 来源:WEB开发网   
核心提示: “Java Web Services: Axis2 Data Binding” 并没有展示针对不同数据绑定的服务器接口代码,但是如果您比较 清单 3 和从上文下载的代码,Java Web 服务: Axis2 中的 JAXB 和 JAX-WS(6),就会发现清单 3 非常接

“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; 
  } 
}

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Java Web 服务

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接