I need to access the mapping table because it contains usefull DB
field.
I can run this code to browse identityproviders and their relations with federations:
But if I try running the code below to browse serviceproviders afterward, it fails with this error message: "next() - Illegal map record argument: FederationRegistry::Data::ServiceproviderFederationMap=HASH(0xa4dddb4) at /usr/lib/perl5/site_perl/5.8.8/Rose/DB/Object/Manager.pm line 2284"$idps = FederationRegistry::Data::Identityprovider::Manager->get_identityproviders(
with_objects => ['federations'],
with_map_records => 1,
);
foreach my $provider (@$idps) {
foreach my $federation (@{$provider->federations}) {
printf "%s / %s / %s / %s\n", $provider->entityid, $federation->map_record()->status;
}
}
$sps = FederationRegistry::Data::Serviceprovider::Manager->get_serviceproviders(
with_objects => ['federations'],
with_map_records => 1,
);
foreach my $provider (@$sps) {
foreach my $federation (@{$provider->federations}) {
printf "%s / %s / %s / %s\n", $provider->entityid, $federation->map_record()->status;
}
}
I can run each of these pieces of code alone, but not within the
same script.
Removing "with_map_records => 1," for the
FederationRegistry::Data::Serviceprovider::Manager->get_serviceproviders()
call removes the error, but then I can't access DB fileds of the
mapping table.
Is there anything I do wrong?
Thanks for your help.
-- Olivier Salaün, pôle Services Applicatifs aux Utilisateurs RENATER http://www.renater.fr Tel : 02 23 23 71 27