[Spacewalk-list] API call system.scheduleScriptRun Error

Jeremy Davis jdavis4102 at gmail.com
Tue May 29 22:30:39 UTC 2012


Hello List,

I am trying to use the system.scheduleScriptRun API call that takes an
array of Spacewalk system IDs (obtained by the api call
systemgroup.listActiveSystemsInGroup) to run a script on some servers. I
get the following error when I call the API to run.

CALL: system.scheduleScriptRun(78649xba40408a720cb82ea3d3de7ab3a8398e,
[[1000010065], [1000010285]], root, root, 60, #!/bin/sh
<removed for security, Tue May 29 15:02:34 MST 2012) CALLER: (removed for
security) TIME: 0.006 seconds
redstone.xmlrpc.XmlRpcFault: unhandled internal exception:
redstone.xmlrpc.XmlRpcArray cannot be cast to java.lang.Integer
at com.redhat.rhn.frontend.xmlrpc.BaseHandler.invoke(BaseHandler.java:131)
at redstone.xmlrpc.XmlRpcDispatcher.dispatch(XmlRpcDispatcher.java:123)
at
com.redhat.rhn.frontend.xmlrpc.RhnXmlRpcServer.execute(RhnXmlRpcServer.java:54)
at
com.redhat.rhn.frontend.xmlrpc.XmlRpcServlet.doPost(XmlRpcServlet.java:162)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:142)
at
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:58)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
com.redhat.rhn.frontend.servlets.LocalizedEnvironmentFilter.doFilter(LocalizedEnvironmentFilter.java:67)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:108)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:55)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704)
at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:679)

Based on the API docs provided with Spacewalk there are two API calls for
system.scheduleScriptRun. One takes an array of system ids. The other just
takes a system id. What could I be doing wrong? Below you will find the
code that calls the system.scheduleScriptRun API.

my $OSAD_ID = $SPACEWALK_API_CLIENT->call('system.scheduleScriptRun',
$SPACEWALK_API_SESSION, \@PROXY_SERVERS, 'root', 'root', 60, $SCRIPT,
$SPACEWALK_TIME);

Thank you for your time and have a great day!

Regards,
Jeremy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/spacewalk-list/attachments/20120529/496a1424/attachment.htm>


More information about the Spacewalk-list mailing list