Hello Keith,
How are you generating the XML in your request? There are two issues
I see with it: the <status> element should be inside the <campaign>
element, and the value should be "Paused", not "paused". So a valid
request would look like:
<updateCampaign>
<campaign>
<id>34975899</id>
<status>Paused</status>
</campaign>
</updateCampaign>
Cheers,
-Jeff Posnick, AdWords API Team
On Jul 10, 5:52 pm, Keith Pettersen <[email protected]> wrote:
> Sending:
>
> <?xml version="1.0" encoding="utf-8"?>
> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/
> envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/
> encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <SOAP-ENV:Header>
> <email>email</email>
> <clientEmail>clientemail</clientEmail>
> <password>password</password>
> <useragent>useragent</useragent>
> <applicationToken>applicationtoken</applicationToken>
> <token>token</token>
> </SOAP-ENV:Header>
> <SOAP-ENV:Body><m:updateCampaign xmlns:m="https://adwords.google.com/
> api/adwords/v13">
> <campaign>
> <id>10158602</id>
> </campaign>
> <status>paused</status>
> </m:updateCampaign>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> API is kicking out this error: org.xml.sax.SAXException: operation
> description is missing parameter description!
>
> here is raw soap packet returned:
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/
> envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <soapenv:Header>
> <responseTime soapenv:actor="http://schemas.xmlsoap.org/soap/actor/
> next" soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
> adwords/v13">258</responseTime>
> <operations soapenv:actor="http://schemas.xmlsoap.org/soap/actor/
> next" soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
> adwords/v13">0</operations>
> <units soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
> soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
> adwords/v13">0</units>
> <requestId soapenv:actor="http://schemas.xmlsoap.org/soap/actor/
> next" soapenv:mustUnderstand="0" xmlns="https://adwords.google.com/api/
> adwords/v13">f35c0cf742e9c0e5932aab967e4cd617</requestId>
> </soapenv:Header>
> <soapenv:Body>
> <soapenv:Fault>
> <faultcode>soapenv:Server.userException</faultcode>
>
> <faultstring>org.xml.sax.SAXException: operation description is
> missing parameter description!</faultstring>
>
> <detail>
> <ns1:stackTrace xmlns:ns1="http://xml.apache.org/
> axis/">org.xml.sax.SAXException: operation description is missing
> parameter description!
> at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:
> 202)
> at org.apache.axis.encoding.DeserializationContext.startElement
> (DeserializationContext.java:1025)
> at org.apache.axis.message.SAX2EventRecorder.replay
> (SAX2EventRecorder.java:159)
> at org.apache.axis.message.MessageElement.publishToHandler
> (MessageElement.java:1138)
> at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:
> 199)
> 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:172)
> at com.google.inject.servlet.DefaultFilterPipeline.dispatch
> (DefaultFilterPipeline.java:43)
> at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:
> 110)
> at com.google.gse.FilteredServlet$Chain.doFilter
> (FilteredServlet.java:149)
> at com.google.soap.base.LoggingFilter.doFilter(LoggingFilter.java:
> 142)
> at com.google.gse.FilteredServlet$Chain.doFilter
> (FilteredServlet.java:149)
> at
> com.google.servlet.balancing.LoadBalancingFilter.processRequestLocally
> (LoadBalancingFilter.java:425)
> at
> com.google.servlet.balancing.LoadBalancingFilter.loadBalanceRequest
> (LoadBalancingFilter.java:228)
> at com.google.servlet.balancing.LoadBalancingFilter.doFilter
> (LoadBalancingFilter.java:169)
> at com.google.gse.FilteredServlet$Chain.doFilter
> (FilteredServlet.java:149)
> at com.google.gse.FilteredServlet.service(FilteredServlet.java:
> 120)
> at com.google.gse.HttpConnection.runServletFromWithinSpan
> (HttpConnection.java:804)
> at com.google.gse.HttpConnection.access$000(HttpConnection.java:
> 63)
> at com.google.gse.HttpConnection$1.runServletFromWithinSpan
> (HttpConnection.java:732)
> at com.google.gse.GSETraceHelper$TraceableServletRunnable$1.run
> (GSETraceHelper.java:388)
> at com.google.tracing.LocalTraceSpanRunnable.run
> (LocalTraceSpanRunnable.java:56)
> at com.google.tracing.LocalTraceSpanBuilder.run
> (LocalTraceSpanBuilder.java:466)
> at com.google.gse.GSETraceHelper
> $TraceableServletRunnable.runWithTracingEnabled(GSETraceHelper.java:
> 348)
> at com.google.gse.GSETraceHelper$TraceableServletRunnable.run
> (GSETraceHelper.java:331)
> at com.google.gse.HttpConnection.runServlet(HttpConnection.java:
> 728)
> at com.google.gse.HttpConnection.run(HttpConnection.java:695)
> at com.google.gse.DispatchQueue$WorkerThread.run
> (DispatchQueue.java:354)
> </ns1:stackTrace>
>
> </detail>
>
> </soapenv:Fault>
> </soapenv:Body>
> </soapenv:Envelope>
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---