Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon产品广告API-503使用Java/SOAP进行批量项目查找时出错_Java_Amazon Web Services_Soap_Amazon_Amazon Product Api - Fatal编程技术网

Amazon产品广告API-503使用Java/SOAP进行批量项目查找时出错

Amazon产品广告API-503使用Java/SOAP进行批量项目查找时出错,java,amazon-web-services,soap,amazon,amazon-product-api,Java,Amazon Web Services,Soap,Amazon,Amazon Product Api,我对批量项目查找有问题 com.sun.xml.internal.ws.client.ClientTransportException: List<String> resGroup = new ArrayList<String>(); resGroup.add("Offers"); resGroup.add("Images"); resGroup.add("ItemAttributes"); resGroup.add("ItemId

我对批量项目查找有问题

com.sun.xml.internal.ws.client.ClientTransportException:

    List<String> resGroup = new ArrayList<String>();
    resGroup.add("Offers");
    resGroup.add("Images");
    resGroup.add("ItemAttributes");
    resGroup.add("ItemIds");

    ItemLookupRequest request = new ItemLookupRequest();
    request.getItemId().addAll(asins);  //asins is an ArrayList<String> of 10 asins
    request.setMerchantId(merchant);
    request.setCondition(condition);
    request.getResponseGroup().addAll(resGroup);

    ItemLookup itemLookup = new ItemLookup();

    itemLookup.setAWSAccessKeyId(AWS_ACCESS_KEY);
    itemLookup.setAssociateTag(ASSOC_TAGS.get("en-GB"));
    itemLookup.getRequest().add(request);

    response = port.itemLookup(itemLookup);   **<-- This line throws the Exception**
com.sun.xml.internal.ws.client.ClientTransportException:服务器发送了HTTP状态代码503:服务不可用 位于com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.checkStatusCode(HttpTransportPipe.java:296) 在com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.createResponsePacket(HttpTransportPipe.java:245)上 位于com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:203) 在com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:122)上 位于com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:95) 位于com.sun.xml.internal.ws.api.pipe.Fiber.\uuuu-doRun(Fiber.java:626) 位于com.sun.xml.internal.ws.api.pipe.Fiber.\u-doRun(Fiber.java:585) 位于com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:570) 位于com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:467) 位于com.sun.xml.internal.ws.client.Stub.process(Stub.java:308) 位于com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:146) 位于com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:98) 位于com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78) 位于com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:129) 位于$Proxy29.itemLookup(未知源)

此项查找是通过以下请求进行的:

    List<String> resGroup = new ArrayList<String>();
    resGroup.add("Offers");
    resGroup.add("Images");
    resGroup.add("ItemAttributes");
    resGroup.add("ItemIds");

    ItemLookupRequest request = new ItemLookupRequest();
    request.getItemId().addAll(asins);  //asins is an ArrayList<String> of 10 asins
    request.setMerchantId(merchant);
    request.setCondition(condition);
    request.getResponseGroup().addAll(resGroup);

    ItemLookup itemLookup = new ItemLookup();

    itemLookup.setAWSAccessKeyId(AWS_ACCESS_KEY);
    itemLookup.setAssociateTag(ASSOC_TAGS.get("en-GB"));
    itemLookup.getRequest().add(request);

    response = port.itemLookup(itemLookup);   **<-- This line throws the Exception**
List resGroup=new ArrayList();
添加(“要约”);
添加(“图像”);
添加(“ItemAttributes”);
resGroup.add(“ItemIds”);
ItemLookupRequest请求=新建ItemLookupRequest();
request.getItemId().addAll(asins)//asins是由10个asins组成的ArrayList
请求:setMerchantId(商户);
请求。设置条件(条件);
request.getResponseGroup().addAll(resGroup);
ItemLookup ItemLookup=新建ItemLookup();
setAWSAccessKeyId(AWS\u访问密钥);
setAssociateTag(ASSOC_TAGS.get(“en GB”));
itemLookup.getRequest().add(请求);

响应=端口.itemLookup(itemLookup)** 我也遇到了503个错误,但是当我重复请求时,它可能会成功。试试这个:

int retries = 0;
while (retries < 3){

    Thread.sleep(1500 * retries);

    try{
        response = port.itemLookup(itemLookup);
        break;
    }
    catch(Exception ex){ }
    retries++;
}
int重试次数=0;
while(重试次数<3次){
线程睡眠(1500*次重试);
试一试{
响应=端口.itemLookup(itemLookup);
打破
}
捕获(例外情况除外){}
重试++;
}

希望这能有所帮助。

我也遇到503个错误,但当我重复请求时,可能会成功。试试这个:

int retries = 0;
while (retries < 3){

    Thread.sleep(1500 * retries);

    try{
        response = port.itemLookup(itemLookup);
        break;
    }
    catch(Exception ex){ }
    retries++;
}
int重试次数=0;
while(重试次数<3次){
线程睡眠(1500*次重试);
试一试{
响应=端口.itemLookup(itemLookup);
打破
}
捕获(例外情况除外){}
重试++;
}
希望这有帮助