Error EstimateKeyword.java using sandbox

12 views
Skip to first unread message

in...@larseggert.de

unread,
Oct 28, 2009, 10:20:16 AM10/28/09
to AdWords API Forum
I Just tried the example from EstimateKeyword.java, set the
properties:
email,passwort,clientEmail,useragent,developerToken and
applicationToken
But still get an error. For namespace i choose:
private static final String namespace =
"https://sandbox.google.com/api/adwords/v13";

I am using the current adwords-api 6.0.0.

The error is:

log4j:WARN No appenders could be found for logger
(org.apache.axis.i18n.ProjectResourceBundle).
log4j:WARN Please initialize the log4j system properly.
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}
Server.userException
faultSubcode:
faultString: The request did not contain a header named 'email'.
faultActor:
faultNode:
faultDetail:
{https://adwords.google.com/api/adwords/v13}fault:
<ns1:code>1</ns1:code>
<ns1:message>The request did not contain a header named 'email'.</
ns1:message>


The request did not contain a header named 'email'.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance
(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
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:267)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.axis.encoding.ser.BaseDeserializerFactory.getSpecialized
(BaseDeserializerFactory.java:154)
at
org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs
(BaseDeserializerFactory.java:84)
at org.apache.axis.encoding.DeserializationContext.getDeserializer
(DeserializationContext.java:464)
at
org.apache.axis.encoding.DeserializationContext.getDeserializerForType
(DeserializationContext.java:547)
at org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild
(SOAPFaultDetailsBuilder.java:157)
at org.apache.axis.encoding.DeserializationContext.startElement
(DeserializationContext.java:1035)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown
Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement
(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl
$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
Source)
at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse
(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke
(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at
com.google.api.adwords.v13.TrafficEstimatorServiceSoapBindingStub.estimateKeywordList
(TrafficEstimatorServiceSoapBindingStub.java:563)
at EstimateKeyword.main(EstimateKeyword.java:52)

AdWords API Advisor

unread,
Oct 28, 2009, 10:58:14 AM10/28/09
to AdWords API Forum
Hi,

The XML namespace doesn't change when using the sandbox, only the
endpoint URL does. If you are new to the API you may want to take a
look at our Intro to the Sandbox video: http://www.youtube.com/watch?v=cqVtUdB975M.
Additional information on the sandbox is available here:
http://code.google.com/apis/adwords/docs/developer/adwords_api_sandbox.html.

Best,
- Eric Koleda, AdWords API Team

in...@larseggert.de

unread,
Oct 29, 2009, 9:27:03 AM10/29/09
to AdWords API Forum
Hi Eric,
thanks for your answer. I am using the java-samples-api (http://
code.google.com/p/adwords-api-java-samples/)
Can you tell me how to use the sandbox and the adwors-api-java-
samples?

On 28 Okt., 15:58, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:
> Hi,
>
> The XML namespace doesn't change when using the sandbox, only the
> endpoint URL does.  If you are new to the API you may want to take a
> look at our Intro to the Sandbox video:http://www.youtube.com/watch?v=cqVtUdB975M.
> Additional information on the sandbox is available here:http://code.google.com/apis/adwords/docs/developer/adwords_api_sandbo....

AdWords API Advisor

unread,
Oct 29, 2009, 12:11:08 PM10/29/09
to AdWords API Forum
Hi,

To use the sandbox with these samples simply set the correct login
information:

//Provide AdWords login information.
private static final String email = "INSERT_LOGIN_EMAIL_HERE";
private static final String password = "INSERT_PASSWORD_HERE";
private static final String clientEmail =
"INSERT_CLIENT_LOGIN_EMAIL_HERE";
private static final String useragent =
"INSERT_COMPANY_NAME: AdWords API Java Sample Code";
private static final String developerToken =
"INSERT_DEVELOPER_TOKEN_HERE";
private static final String applicationToken =
"INSERT_APPLICATION_TOKEN_HERE";

Don't change the namespace:

private static final String namespace =
"https://adwords.google.com/api/adwords/cm/v200906";

And don't change the proxyUrl, as it is already set to the sandbox
URL:

private static final String proxyUrl =
"https://adwords-sandbox.google.com/api/adwords/cm/v200906/";

Best,
- Eric

in...@larseggert.de

unread,
Oct 30, 2009, 10:49:58 AM10/30/09
to AdWords API Forum
Hi Eric,
ok. I tried the following:

private static final String email = "in...@larseggert.de";
private static final String password = "MY_PASS";
private static final String clientEmail = "in...@larseggert.de";
private static final String useragent = "orange-seo: AdWords API
Java Sample Code";
private static final String developerToken = "MY_TOKEN";
private static final String applicationToken = "MY_APP_TOKEN";

private static final String namespace = "https://adwords.google.com/
api/adwords/v13";


But still get:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}
Server.userException
faultSubcode:
faultString: Must specify a client in order to do traffic estimates.
faultActor:
faultNode:
faultDetail:
{https://adwords.google.com/api/adwords/v13}fault:
<ns1:code>94</ns1:code>

<ns1:message>Must specify a client in order to do traffic
estimates.</ns1:message>



Must specify a client in order to do traffic estimates.
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:267)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.axis.encoding.ser.BaseDeserializerFactory.getSpecialized
(BaseDeserializerFactory.java:154)
at
org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs
(BaseDeserializerFactory.java:84)
at org.apache.axis.encoding.DeserializationContext.getDeserializer
(DeserializationContext.java:464)
at
org.apache.axis.encoding.DeserializationContext.getDeserializerForType
(DeserializationContext.java:547)
at org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild
(SOAPFaultDetailsBuilder.java:157)
at org.apache.axis.encoding.DeserializationContext.startElement
(DeserializationContext.java:1035)
at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement
(Unknown Source)
at
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement
(Unknown Source)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl
$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next
(Unknown Source)
at
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next
(Unknown Source)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse
(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse
(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown
Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse
(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
$JAXPSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse
(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke
(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at
com.google.api.adwords.v13.TrafficEstimatorServiceSoapBindingStub.estimateKeywordList
(TrafficEstimatorServiceSoapBindingStub.java:563)
at EstimateKeyword.main(EstimateKeyword.java:52)


I don't understand the message because i set the client.
The rest of the code is the exactly demo-code from adwords-api-java-
samples

any idea?

greetings


On 29 Okt., 17:11, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:
> Hi,
>
> To use thesandboxwith these samples simply set the correct login
> > Can you tell me how to use thesandboxand the adwors-api-java-
> > samples?
>
> > On 28 Okt., 15:58, AdWords API Advisor <adwordsapiadvi...@google.com>
> > wrote:
>
> > > Hi,
>
> > > The XML namespace doesn't change when using thesandbox, only the
> > > endpoint URL does.  If you are new to the API you may want to take a
> > > look at our Intro to theSandboxvideo:http://www.youtube.com/watch?v=cqVtUdB975M.
> > > Additional information on thesandboxis available here:http://code.google.com/apis/adwords/docs/developer/adwords_api_sandbo....

AdWords API Advisor

unread,
Nov 3, 2009, 12:24:13 PM11/3/09
to AdWords API Forum, in...@larseggert.de
Hi,

The clientEmail header is not formatted correctly. Please read the
section on clientEmail here:
http://code.google.com/apis/adwords/docs/developer/adwords_api_sandbox.html#requestheaders.

Best,
- Eric
> com.google.api.adwords.v13.TrafficEstimatorServiceSoapBindingStub.estimateK eywordList
> (TrafficEstimatorServiceSoapBindingStub.java:563)
>         at EstimateKeyword.main(EstimateKeyword.java:52)
>
> ...
>
> read more »
Reply all
Reply to author
Forward
0 new messages