No such operation 'getReportJobStatus'

48 views
Skip to first unread message

Thomas

unread,
Jul 30, 2008, 10:41:15 AM7/30/08
to AdWords API Forum
Hi,

I'm finding myself encountering the following error quite a lot the
past weeks and it's driving me totally nuts.

"No such operation 'getReportJobStatus'"

So...ummm... eerrrrr? WHAT?

[requestHeaders] => <email>*****</email>
<password>>*****</</password>
<useragent>Google APIlity PHP Library for AdWords</
useragent>
<developerToken>************</developerToken>
<clientEmail></clientEmail>
<applicationToken>************</applicationToken>


<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-
ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://
www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns8340="http://tempuri.org"><SOAP-
ENV:Header><email>************</email>
<password>************</password>
<useragent>Google APIlity PHP Library for AdWords</
useragent>
<developerToken>************</developerToken>
<clientEmail></clientEmail>
<applicationToken>************</applicationToken></SOAP-
ENV:Header><SOAP-ENV:Body><getReportJobStatus xmlns='https://
adwords.google.com/api/adwords/v11'>
<reportJobId>************</reportJobId>
</getReportJobStatus></SOAP-ENV:Body></SOAP-
ENV:Envelope>

SEM

unread,
Aug 1, 2008, 9:24:38 AM8/1/08
to AdWords API Forum
Seriously, is this only happening to me?

On Jul 30, 4:41 pm, Thomas <tho...@rdlt.com> wrote:
> Hi,
>
> I'm finding myself encountering the following error quite a lot the
> past weeks and it's driving me totally nuts.
>
> "No such operation 'getReportJobStatus'"
>
> So...ummm... eerrrrr? WHAT?
>
> [requestHeaders] => <email>*****</email>
> <password>>*****</</password>
> <useragent>Google APIlity PHP Library for AdWords</
> useragent>
> <developerToken>************</developerToken>
> <clientEmail></clientEmail>
> <applicationToken>************</applicationToken>
>
> <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-
> ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-

AdWords API Advisor

unread,
Aug 1, 2008, 12:42:39 PM8/1/08
to AdWords API Forum
Hello Thomas,

First off, are you using the latest version of the APIlity client
library?

If it's available, could you provide a log of the response XML you're
receiving when you get that error, in addition to the request XML you
already provided? I can't think of any reason why you'd be seeing that
and I'm curious as to whether the error message is incorrectly coming
from APIlity's code or whether it's an actual error from the backend
SOAP service.

Cheers,
-Jeff Posnick, AdWords API Team

Tomac

unread,
Aug 4, 2008, 3:09:59 AM8/4/08
to AdWords API Forum
Hi Thomas,

Probably you are running PHP4, so the object-oriented mode (http://
google-apility.sourceforge.net/#Object_Orientation) won't work, and
report that there is no function getReportStatus. Could you try to
disable oo mode in settings.ini and run your tests again? This should
work, if not, please post back to this forum. Thanks!

Cheers,
Tom

--
Thomas Steiner
http://blog.tomayac.de/
mailto:tomac AT google DOT com

Thomas

unread,
Aug 4, 2008, 5:59:40 AM8/4/08
to AdWords API Forum
Tomac,

OO mode has already been disabled... the problem lies in the XML
request


Jeff,

As for the XML response & requests, I assume you are pointing to the
following

REQUEST:
<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-
instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns8340="http://tempuri.org"><SOAP-
ENV:Header><email>************</email>
<password>************</password>
<useragent>Google APIlity PHP Library for AdWords</
useragent>
<developerToken>************</developerToken>
<clientEmail></clientEmail>
<applicationToken>************</applicationToken></SOAP-
ENV:Header><SOAP-ENV:Body><getReportJobStatus xmlns='https://
adwords.google.com/api/adwords/v11'>
<reportJobId>************</reportJobId>
</getReportJobStatus></SOAP-ENV:Body></SOAP-
ENV:Envelope>


RETURN:
<soapenv:fault>
<faultcode>Server.userException</faultcode>

<faultstring>No such operation 'getReportJobStatus'</faultstring>

<detail>
<ns1:stacktrace xmlns:ns1="http://xml.apache.org/axis/">No such
operation 'getReportJobStatus'
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:
286)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:342)
at
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:
146)
at
com.google.ads.netapi.config.AdWordsApiProvider.processMessage(AdWordsApiProvider.java:
62)
at
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:
319)
at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:
32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:
450)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:
637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:
301)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at com.google.gse.FilteredServlet
$ChainEnd.doFilter(FilteredServlet.java:153)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:
46)
at com.google.gse.FilteredServlet$Chain.doFilter(FilteredServlet.java:
131)
at com.google.soap.base.LoggingFilter.doFilter(LoggingFilter.java:
142)
at com.google.gse.FilteredServlet$Chain.doFilter(FilteredServlet.java:
131)
at
com.google.servlet.balancing.LoadBalancingFilter.processRequestLocally(LoadBalancingFilter.java:
403)
at
com.google.servlet.balancing.LoadBalancingFilter.loadBalanceRequest(LoadBalancingFilter.java:
213)
at
com.google.servlet.balancing.LoadBalancingFilter.doFilter(LoadBalancingFilter.java:
160)
at com.google.gse.FilteredServlet$Chain.doFilter(FilteredServlet.java:
131)
at com.google.gse.FilteredServlet.service(FilteredServlet.java:103)
at com.google.gse.HttpConnection.runServlet(HttpConnection.java:651)
at com.google.gse.HttpConnection.run(HttpConnection.java:575)
at com.google.gse.DispatchQueue$WorkerThread.run(DispatchQueue.java:
339)
</ns1:stacktrace>

</detail>

</soapenv:fault>

AdWords API Advisor

unread,
Aug 4, 2008, 12:36:06 PM8/4/08
to AdWords API Forum
Hello Thomas,

Okay, that does indicate that the error is being returned from the
backend SOAP service. That is basically the XML I was looking for, but
what would be most helpful is if you could check if the response XML
contained a SOAP header named "requestId". If so, could you post that
value? It would help me look up in our logs some more details about
what happened while your request was being processed.

Cheers,
-Jeff Posnick, AdWords API Team


On Aug 4, 5:59 am, Thomas <tho...@rdlt.com> wrote:
> Tomac,
>
> OO mode has already been disabled... the problem lies in the XML
> request
>
> Jeff,
>
> As for the XML response & requests, I assume you are pointing to the
> following
>
> REQUEST:
> <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-
> ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/

Thomas

unread,
Aug 5, 2008, 5:49:57 AM8/5/08
to AdWords API Forum
I just requested a new report and it returned me the following ID:
443531597
Furthermore, today I'm experiencing even more random timeout issues...
seriously, this thing is driving me bonkers :)


On Aug 4, 6:36 pm, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:

AdWords API Advisor

unread,
Aug 5, 2008, 10:28:38 AM8/5/08
to AdWords API Forum
Hello Thomas,

What I'm looking for is the value of the requestId SOAP response
header associated with a response that has a fault in it. If you could
provide that it should help in terms of figuring out what's going on
in the backend.

Cheers,
-Jeff Posnick, AdWords API Team


Thomas

unread,
Aug 5, 2008, 10:35:55 AM8/5/08
to AdWords API Forum
<responseTime soapenv:actor="http://schemas.xmlsoap.org/soap/actor/
next" soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
adwords/v11">488</responseTime>
<operations soapenv:actor="http://schemas.xmlsoap.org/soap/actor/
next" soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
adwords/v11">0</operations>
<units soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
adwords/v11">0</units>
<requestId soapenv:actor="http://schemas.xmlsoap.org/soap/actor/
next" soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
adwords/v11">23391d61ff39fe478a4a3cad90fe43ca</requestId>

That should be it?

On Aug 5, 4:28 pm, AdWords API Advisor <adwordsapiadvi...@google.com>

AdWords API Advisor

unread,
Aug 6, 2008, 1:06:20 PM8/6/08
to AdWords API Forum
Thanks, Thomas, I was able to pull the log of your request and I see
the following:

<getReportJobStatus xmlns='https://adwords.google.com/api/adwords/
v11'>
<reportJobId></reportJobId>
</getReportJobStatus>

i.e. you're not passing anything in as the reportJobId parameter in
that request. This must be confusing the SOAP service into thinking
you're trying to call some method whose signature doesn't exist,
leading to the (admittedly misleading) error message.

In any case, if you ensure that you're passing in a valid reportJobId
ahead of time I don't think you'll encounter this error message in the
future.

Cheers,
-Jeff Posnick, AdWords API Team


SEM

unread,
Aug 7, 2008, 5:47:14 AM8/7/08
to AdWords API Forum
If that is the case, it would imply that I am not getting a report job
id back from the google API? I'm just using the latest version of
APIlity...
I'm not getting any error while performing the sheduleReportJob action
though they are visible in Adwords' report center.

Thanks for your assistance.
Thomas

On Aug 6, 7:06 pm, AdWords API Advisor <adwordsapiadvi...@google.com>

AdWords API Advisor

unread,
Aug 7, 2008, 11:03:41 AM8/7/08
to AdWords API Forum
Hello Thomas,

Well, I'm not sure about exactly what's going on in your code, but if
you're getting the reportJobId directly from the APIlity schedule
report job call and it's coming back as empty, perhaps there's
something going on on APIlity's end. If you take a look at the logs of
SOAP messages for the scheduleReportJob() right before the situation
in which you pass in a blank reportJobId, do you see the reportJobId
being properly returned by the SOAP service?

Cheers,
-Jeff Posnick, AdWords API Team


Thomas

unread,
Aug 7, 2008, 11:05:09 AM8/7/08
to AdWords API Forum
Hey, Jeff, just admit you already fixed whatever it was... it just
started working again... for now...lol :D

On Aug 7, 5:03 pm, AdWords API Advisor <adwordsapiadvi...@google.com>

Thomas

unread,
Aug 8, 2008, 7:52:40 AM8/8/08
to AdWords API Forum
Aaah, the error came back =D Great :(

Seriously, I'm not getting a report job ID back from Google...
Can you assist any further?

Thanks,
Thomas

AdWords API Advisor

unread,
Aug 8, 2008, 11:11:08 AM8/8/08
to AdWords API Forum
Hello Thomas,

Yes, if you could provide the requestId SOAP response header for the
scheduleReportJob() call that doesn't return a reportJobId I can
definitely look into it further.

Cheers,
-Jeff Posnick, AdWords API Team


Silverstorm

unread,
Aug 9, 2008, 6:18:53 PM8/9/08
to AdWords API Forum
I use raw Soap Extension in php and getting strange error: SoapFault
exception: [Server.userException] No such operation 'addAdGroup'
However method addAdGroup exist, moreover all other services working
well, but with AdGroupService I can use any method.

Also I'd like to report that live services seems to be down.
https://adwords.google.com/api/adwords/v12/AccountService?wsdl -->
gives 502 error

On 8 авг, 17:11, AdWords API Advisor <adwordsapiadvi...@google.com>

Silverstorm

unread,
Aug 9, 2008, 7:21:10 PM8/9/08
to AdWords API Forum
aaaah guys its all about type convertion. You should always pay
attention at annotation which types service method is waiting for and
construct proper request.
take a look here:
http://pl2.php.net/manual/en/soap.constants.php

SEM

unread,
Aug 11, 2008, 3:08:47 AM8/11/08
to AdWords API Forum
Jeff,

As requested, my reportId

5496fba864aeaaddd595ee5e4e4f7215

Hopefully you'll be able to find something :)

Thanks!
thomas

AdWords API Advisor

unread,
Aug 11, 2008, 11:23:50 AM8/11/08
to AdWords API Forum
Hello,

There was scheduled downtime this past weekend which it sounds like
you ran into:

http://adwordsapi.blogspot.com/2008/08/adwords-downtime-august-9-10am-2pm-pdt.html

Cheers,
-Jeff Posnick, AdWords API Team


AdWords API Advisor

unread,
Aug 12, 2008, 12:01:44 PM8/12/08
to AdWords API Forum
Hello Thomas,

I just pulled the logs associated with that requestId (not reportId)
and it's for another getReportJobStatus() SOAP call with a blank
reportJobId parameter.

What I'm looking for is the requestId SOAP response header associated
with the scheduleReportJob() SOAP call that you make that you say is
returning a blank reportJobId--i.e. the scheduleReportJob() SOAP call
made right before the getReportJobStatus() call that is failing.

Cheers,
-Jeff Posnick, AdWords API Team


Reply all
Reply to author
Forward
0 new messages