Another Client Against the Amazon E-Commerce Service

The second client against the Amazon E-Commerce service does not deal explicitly with any XML but otherwise has the same functionality as the first client. The steps for setting up the second client are listed below, but the ZIP file with the sample code includes JAR Amazon2.jar that can be executed directly:

% java -jar Amazon2.jar <accessId> <secretKey>

Here are the steps for setting up the second Amazon client. These steps that would be copied for a Java client against any RESTful service that provides an XML Schema—and most services do provide a schema. For a depiction of the process and the role of Java’s xjc utility, see Figure 3-1.

Using the xjc utility to transform an XML Schema into Java classes

Figure 3-1. Using the xjc utility to transform an XML Schema into Java classes

  1. Download the XML Schema for the E-Commerce service. The URL is:

    http://webservices.amazon.com/AWSECommerceServices/AWSECommerceService.xsd

    The downloaded schema is about 55K in size. (This is the same schema used in the SOAP-based versions of the Amazon services.) Put the downloaded document in a local file such as amazon2/amazon.xsd. The local filename is arbitrary.

  2. The amazon.xsd needs some tweaking so that the Java JAX-B utilities can use this file without complaining. The downloaded XML Schema begins as follows:

    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
      xmlns:xs="http://www.w3.org/2001/XMLSchema"                              
      xmlns:tns

Get Java Web Services: Up and Running, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.