Red Hat Bugzilla – Bug 565450
org.create API call not existing
Last modified: 2010-02-15 19:27:29 EST
Description of problem:
API call org.create is not implemented, or accessible.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Try with the following script :
my $HOST = 'sat.hash.fr';
my $user = 'rhn-admin';
my $pass = 'redhat';
my $client = Frontier::Client->new(url => "http://$HOST/rpc/api");
my $session = $client->call('auth.login',$user, $pass);
print STDERR Dumper( \$session );
my $org = $client->call('org.create', $session, "test org", "test(admin", "redhat", "Mr.", "shadowman", "test", 'firstname.lastname@example.org',);
print Dumper( \$org );
2. Tailor it to your environment
Fault returned from XML RPC Server, fault code -1: redstone.xmlrpc.XmlRpcFault: Could not find method create in class class com.redhat.rhn.frontend.xmlrpc.org.OrgHandler
No error message. Organisation created.
OK, found the bug, after searching Spacewalk code.
It turns out that we need to pass a boolean as last parameter. The script above can't work, as missing the last parameter.
But in order to make it work, the code is still nasty :
my $org = $client->call(
Frontier::RPC2::Boolean->new(0), # here, the definition of a boolean :(
So we can close the bug, but would need to open a RFE to get predefined booleans for API, and doc entry to point to those.