Forum Discussion

Thomas_LE_GENTI's avatar
Thomas_LE_GENTI
Icon for Nimbostratus rankNimbostratus
Oct 28, 2008

SOAP deserializer

Hi everyone !

I've got this error :

SOAP-ENV:Client Unknown method "{urn:iControl:System:Failover}:get_failover_state"

It's maybe a perl error, but sooy i'm new at this.

It's coming from (I think) :

 
 sub getSystemState()  
 { 
   my $soapResponse = $System_Failover->get_failover_state(); 
   if ( $soapResponse->fault ) 
   { 
     print $soapResponse->faultcode, " ", $soapResponse->faultstring, "\n"; 
   } 
   else 
   { 
     my $FailoverState = $soapResponse->result; 
 print $FailoverState; 
     return "$FailoverState\n"; 
   } 
 } 
 

and my definition is :

 
 System_Failover = SOAP::Lite 
 -> uri('urn:iControl:System:Failover') 
 -> readable(1) 
 -> proxy("$sProtocol://$sHost:$sPort/iControl/iControlPortal.cgi");

What should i correct ?

Tal !

4 Replies

  • Don_MacVittie_1's avatar
    Don_MacVittie_1
    Historic F5 Account
    Hey Tal,

     

     

    I haven't used the Perl stuff, but it looks like the URN is just a bit off. If the Perl libraries use the standard naming conventions, try changing the uri in your definition to:

     

    uri('urn:iControl:System:SystemFailover')

     

     

    And see what it does. I suspect it will solve your problem.

     

     

    Regards,

     

    Don.
  • Hi Don,

     

     

    unfortunately, I have the same error :

     

     

    SOAP-ENV:Client Unknown method "{urn:iControl:System:SystemFailover}:get_failover_state"

     

     

    In the API, the function is at :

     

     

    iControl::System::Failover::get_failover_state

     

     

    http://devcentral.f5.com/wiki/default.aspx/iControl/System__Failover__get_failover_state.html

     

     

    Any Idea ? It seems to be in that definition, but what I tried wasn't working ...

     

     

    Tal.
  • Ok, I found why :

     

     

    In fact, Failover is an Interface, so I should have written :

     

     

    {urn:iControl:System/Failover}

     

     

    Hope I'll be helpfull for someone.

     

     

    ++
  • Sorry for not getting to this sooner but I'm glad you figured it out.

     

     

    The format of the uri is "urn:iControl:Module/Interface" for all of the methods.

     

     

    -Joe