Spyneのマニュアルspyne.model.fault.Fault
では、Spyne で SOAP フォールトを作成する正しい方法は(または独自のサブクラス) のインスタンスを発生させることであると指摘しています。
@add_metaclass(ComplexModelMeta)
class Fault(ComplexModelBase, Exception):
# ...
サブクラス化する理由を理解しようとしていComplexModelBase
ます。私の最初の仮定は、次のよう<detail>
に、サブクラスの SOAP Fault の要素に入れたい要素を宣言することでした。Fault
class MyApplicationError(Fault):
__namespace__ = 'http://myapplication.com/ns'
_type_info = [
('reason', Unicode),
]
ただし、実際にこの例外を発生させるdetail
と、コンストラクターのパラメーターにプレーンな dict を渡す必要があるようです。
detail
構造化されたデータ セットを入力するためのベスト プラクティスは何ですか? Fault
サブクラスでこの構造を宣言しますか?
はいの場合、どのように埋めますか? そうでない場合、なぜFault
サブクラス化するのComplexModelBase
ですか?