I just ran into a problem similar to this a few days ago - most likely your SOAP request is getting mangled somehow - notice the stack trace being returned, the error is in Google's WebServer stack, it can't deserialize the request. Take a look at your SOAP and compare it to the one here: http://code.google.com/p/adwords-api-xml-samples/source/browse/trunk/src/validate_report_job.xml .
On Apr 23, 12:00 am, PPL <[email protected]> wrote: > Hi, > I'm testing with real developer token and application token to > schedule and download the report of the MCC account. > The following are my codes. > > String email="xxxx"; > String password="xxxx"; > String useragent="JST"; > String developerToken="xxxx"; > String applicationToken="xxxx"; > > AdWordsUser user = new AdWordsUser > (email,password,useragent,developerToken,applicationToken); > ReportInterface service = > (ReportInterface) user.getService > (AdWordsUser.REPORT_SERVICE); > > DefinedReportJob job = new DefinedReportJob(); > job.setSelectedReportType("Keyword"); > job.setAggregationTypes(new String[] {"Daily"}); > > job.setStartDay(new ReportDate(2008, 1, 1).toDate()); > job.setEndDay(new ReportDate(2008, 2, 28).toDate()); > job.setName("Demo Keyword Daily Report"); > job.setSelectedColumns(new String[] { > All possible columns of Daily aggregation of Keyword report > type except the mutually exclusive columns}); > job.setCrossClient(true); > > // Validate report job. > service.validateReportJob(job); > > //Schedule report job. > long jobId = service.scheduleReportJob(job); > System.out.println("report id is = "+jobId); > //Wait for report to finish. > ReportJobStatus status = service.getReportJobStatus(jobId); > while (status != ReportJobStatus.Completed && > status != ReportJobStatus.Failed) { > try { > Thread.sleep(30000); > > } catch (InterruptedException e) {} > > status = service.getReportJobStatus(jobId); > System.out.println("Report job status is " + status.toString()); > } > if (status == ReportJobStatus.Failed) { > System.out.println("Job failed!"); > } else { > System.out.println("The report is ready!"); > > // Get report download url. > String url = service.getGzipReportDownloadUrl(jobId); > System.out.println("Report url is " + url); > > } > > It's showing the following error when validating the report. > > Exception in thread "main" AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/} > Server.userException > faultSubcode: > faultString: Application information rejected. > faultActor: > faultNode: > faultDetail: > {https://adwords.google.com/api/adwords/v13}fault: > <ns1:code>129</ns1:code> > <ns1:message>Application information rejected.</ns1:message> > > Application information rejected. > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown > Source) > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown > Source) > at java.lang.reflect.Constructor.newInstance(Unknown Source) > at java.lang.Class.newInstance0(Unknown Source) > at java.lang.Class.newInstance(Unknown Source) > at org.apache.axis.encoding.ser.BeanDeserializer.<init> > (BeanDeserializer.java:104) > at org.apache.axis.encoding.ser.BeanDeserializer.<init> > (BeanDeserializer.java:90) > at com.google.api.adwords.v13.ApiException.getDeserializer > (ApiException.java:264) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > Although it was fine with sandbox with the same codes except the user. > > AdWordsUser user= new AdWordsUser(email, password, > useragent,developerToken, > applicationToken, version,new > URL(alternateUrl)); > > Could someone help me? --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "AdWords API Forum" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/adwords-api?hl=en -~----------~----~----~----~------~----~------~--~---
