Forum Discussion
Michel_van_der_
Nimbostratus
Oct 31, 2005Follow up questions about Networking/VLAN
I wrote this little perl script:
!/usr/bin/perl
use strict;
use SOAP::Lite;
require "dumpvar.pl";
my ($u, $p, $ip, $soap, $soapResponse, $vlans, $vlan, $memberEntry);
sub SOAP::Transport::HTTP::Client::get_basic_credentials {
return $u => $p;
}
$u = $ARGV[0];
$p = $ARGV[1];
$ip = $ARGV[2];
$soap = SOAP::Lite
->uri("urn:iControl:Networking/VLAN")
->proxy("https://$ip/iControl/iControlPortal.cgi");
$soapResponse = $soap->get_list();
if ( $soapResponse->fault ) {
print "Can't get VLAN list: " .
$soapResponse->faultcode . " " .
$soapResponse->faultstring;
exit 1;
}
$vlans = $soapResponse->result;
for $vlan ( @$vlans ) {
print "$vlan:\n";
$soapResponse = $soap->get_member(
SOAP::Data->name('vlans' => [ $vlan ] ),
);
if ( $soapResponse->fault ) {
print "Can't get VLAN members: " .
$soapResponse->faultcode . " " .
$soapResponse->faultstring;
exit 1;
}
$memberEntry = $soapResponse->result();
main::dumpValue($memberEntry);
};
1;
However, SOAP::Lite is not happy with the second call and starts spewing:
Unrecognized type '{urn:iControl}Networking.MemberType'xmlns:E="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:A="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:s="http://www.w3.org/2001/XMLSchema-instance"
xmlns:y="http://www.w3.org/2001/XMLSchema"
xmlns:iControl="urn:iControl"
E:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">xmlns:m="urn:iControl:Networking/VLAN">s:type="A:Array"
A:arrayType="iControl:Networking.VLAN.MemberEntry[][1]">A:arrayType="iControl:Networking.VLAN.MemberEntry[1]">s:type="iControl:Networking.VLAN.MemberEntry">s:type="y:string">1.1s:type="iControl:Networking.MemberType">MEMBER_INTERFACEs:type="iControl:Networking.MemberTagType">MEMBER_UNTAGGED
at ./testVLAN line 28
Any suggestions as to what is wrong here? I truned on tracing on the F5, all seems OK:
[root@kopsildb003:Standby] config tail /var/log/debug
Oct 31 14:11:45 kopsildb003 iControlPortal.cgi[24677]: Networking:-------------------------------------
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: icontrol_portal:ernalÉ
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking:+++++++++++++++++++++++++++++++++++++
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking:VLAN::get_list ( ) called by user "admin"
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking:-------------------------------------
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: icontrol_portal:external
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking:+++++++++++++++++++++++++++++++++++++
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking:VLAN::get_member ( ) called by user "admin"
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking: [0] VLAN: external
Oct 31 14:12:52 kopsildb003 iControlPortal.cgi[24677]: Networking:-------------------------------------
[root@kopsildb003:Standby] config
Michel
- Since we moved to custom enum types in 9.0, you'll need to override the SOAP::Deserializer::typecast() routine.
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects