E:\temp>perl soap-cli.pl OBJ-State:$VAR1 = bless( { '_signature' => [], '_value' => [ bless( { 'size' => '20' }, 'DemoService' ) ], '_attr' => {} }, 'SOAP::Data' ); Size is ::45 New-OBJ-State:$VAR1 = bless( { '_name' => undef, '_signature' => [ 'DemoService∟DemoService' ], '_value' => [ \bless( { '_signature' => [], '_value' => [ bless( { '_name' => 'size', '_signature' => [], '_value' => [ '45' ], '_prefix' => '', '_attr' => { 'xsi:type' => 'xsd:int', '{http://www.w3.org/2001/XMLSchema-instance}type' => '{http:// www.w3.org/2001/XMLSchema}int' } }, 'SOAP::Data' ) ], '_attr' => {} }, 'SOAP::Data' ) ], '_attr' => {} }, 'SOAP::Data' ); ERROR: soap:Server, Can't use string ("DemoService") as a HASH ref while "strict refs" in use at accessor DemoService::size (defined at soa p-ser.pl line 8) line 3. E:\temp>