Amazon Product Advertising API через Java / SOAP

Я играл с API рекламы продуктов Amazon, и я не могу получить запрос, чтобы пройти и предоставить мне данные. Я работал над этим: http://docs.amazonwebservices.com/AWSECommerceService/2011-08-01/GSG/ и это: Подписанный запрос API рекламы продуктов Amazon с помощью Java

Вот мой код .. Я создал привязки SOAP, используя это: http://docs.amazonwebservices.com/AWSECommerceService/2011-08-01/GSG/YourDevelopmentEnvironment.html#Java

В пути к классам, У меня есть только: commons-codec.1.5.jar

import com.ECS.client.jax.AWSECommerceService;
import com.ECS.client.jax.AWSECommerceServicePortType;
import com.ECS.client.jax.Item;
import com.ECS.client.jax.ItemLookup;
import com.ECS.client.jax.ItemLookupRequest;
import com.ECS.client.jax.ItemLookupResponse;
import com.ECS.client.jax.ItemSearchResponse;
import com.ECS.client.jax.Items;

public class Client {

    public static void main(String[] args) {

        String secretKey = ;
        String awsKey = ;

        System.out.println("API Test started");

        AWSECommerceService service = new AWSECommerceService();
        service.setHandlerResolver(new AwsHandlerResolver(
                secretKey)); // important
        AWSECommerceServicePortType port = service.getAWSECommerceServicePort();

        // Get the operation object:
        com.ECS.client.jax.ItemSearchRequest itemRequest = new com.ECS.client.jax.ItemSearchRequest();

        // Fill in the request object:
        itemRequest.setSearchIndex("Books");
        itemRequest.setKeywords("Star Wars");
        // itemRequest.setVersion("2011-08-01");
        com.ECS.client.jax.ItemSearch ItemElement = new com.ECS.client.jax.ItemSearch();
        ItemElement.setAWSAccessKeyId(awsKey);
        ItemElement.getRequest().add(itemRequest);

        // Call the Web service operation and store the response
        // in the response object:
        com.ECS.client.jax.ItemSearchResponse response = port
                .itemSearch(ItemElement);

        String r = response.toString();
        System.out.println("response: " + r);

        for (Items itemList : response.getItems()) {
            System.out.println(itemList);
            for (Item item : itemList.getItem()) {
                System.out.println(item);
            }
        }

        System.out.println("API Test stopped");

    }
}

Вот что я получил ... Я надеялся увидеть несколько книг по Звездным войнам, доступных на Amazon, выгруженных на мою консоль: - /:

API Test started
response: com.ECS.client.jax.ItemSearchResponse@7a6769ea
com.ECS.client.jax.Items@1b5ac06e
API Test stopped

What я делаю неправильно (обратите внимание, что никакой «элемент» во втором цикле for не распечатывается, потому что он пуст)? Как мне устранить эту неполадку или получить соответствующую информацию об ошибке?

8
задан Community 23 May 2017 в 12:26
поделиться