wsdl2ruby を使用して Web サービスのクライアントを生成しました。サービス メソッドが WSDL で定義された例外の 1 つを発生させた場合、例外オブジェクトの属性にアクセスしたいと思います。私が知る限り、例外オブジェクトは SOAP::Mapping::Object にマーシャリングされ、RESCUE ブロックで使用できるようになった SOAP::FaultError オブジェクトの detail 属性によって参照されます。
SOAP::Mapping::Object は marshal_load メソッドに応答しますが、そのメソッドは dumpobj という 1 つのパラメーターを受け取ります。このため、オブジェクトをメソッドのレシーバーとして使用するのではなく、そのオブジェクトをメソッドのパラメーターとして提供する必要があると思われます。
例外オブジェクトをアンマーシャリングする適切な方法の例を教えてもらえますか?