关于ws异常处理咨询
哈哈,我是在myeclipse中调用亚马逊的ws,然后出错了,就是想咨询一下大神。
下面这个例子是我看的书中的一个程序,名字叫做JavaWebServicesUpandRunning
是MartinKalin编写的。
packagech02.ts.test;
importawsClient.AWSECommerceService;
importawsClient.AWSECommerceServicePortType;
importawsClient.ItemSearchRequest;
importawsClient.ItemSearch;
importawsClient.Items;
importawsClient.Item;
importawsClient.OperationRequest;
importawsClient.SearchResultsMap;
importjavax.xml.ws.Holder;
importjava.util.List;
importjava.util.ArrayList;
@SuppressWarnings("unused")
publicclassAmazonClientW{
publicstaticvoidmain(String[]args){
if(args.length<1){
System.err.println("Usage:javaAmazonClientW<accesskey>");
return;
}
finalStringaccess_key=args[0];
//Constructaserviceobjecttogettheportobject.
AWSECommerceServiceservice=newAWSECommerceService();
AWSECommerceServicePortTypeport=service.getAWSECommerceServicePort();
//Constructanemptyrequestobjectandthenadddetails.
ItemSearchRequestrequest=newItemSearchRequest();
request.setSearchIndex("Books");
request.setKeywords("quantumgravity");
ItemSearchsearch=newItemSearch();
search.getRequest().add(request);
search.setAWSAccessKeyId(access_key);
Holder<OperationRequest>operation_request=null;
Holder<List<Items>>items=newHolder<List<Items>>();
port.itemSearch(
search.getMarketplaceDomain(),
search.getAWSAccessKeyId(),
//search.getSubscriptionId(),
search.getAssociateTag(),
search.getXMLEscaping(),
search.getValidate(),
search.getShared(),
search.getRequest(),
operation_request,
items);
//Unpacktheresponsetoprintthebooktitles.
Itemsretval=items.value.get(0);//firstandonlyItemselement
List<Item>item_list=retval.getItem();//listofItemsubelements
for(Itemitem:item_list)
//eachIteminthelist
System.out.println(item.getItemAttributes().getTitle());
}
}上面是源码,
下面是出错的信息
Exceptioninthread"main"com.sun.xml.internal.ws.client.ClientTransportException:TheserversentHTTPstatuscode400:BadRequest
atcom.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.checkStatusCode(HttpTransportPipe.java:296)
atcom.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.createResponsePacket(HttpTransportPipe.java:245)
atcom.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:203)
atcom.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:122)
atcom.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:95)
atcom.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:626)
atcom.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:585)
atcom.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:570)
atcom.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:467)
atcom.sun.xml.internal.ws.client.Stub.process(Stub.java:308)
atcom.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:163)
atcom.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:98)
atcom.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
atcom.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:135)
atcom.sun.proxy.$Proxy29.itemSearch(UnknownSource)
atch02.ts.test.AmazonClientW.main(AmazonClientW.java:35)
求大神指导,在线坐等。。。。。
------解决方案--------------------
400:BadRequest
应该是ws地址已经改了
*****************************************************************************
签名档:http://feiyun0112.cnblogs.com/
查询谷 - www.chaxungu.com
关于ws错误处理咨询
编辑:chaxungu时间:2022-10-10 23:24:05分类:web开发