スキーマを使用して受信リクエストを検証できない状況に直面しています (基本的にスキーマは存在しますが、リクエスト内の任意の文字列を受け入れます。wsdl デザイナーには、さまざまなソースと柔軟性からのリクエストを受け入れる独自の理由があります)。しかし、リクエストが受信されると、リクエスト ラッパーの子要素が期待どおりであることを検証します (そのために XPath を使用します)。Soap Fault
子要素が期待どおりでない場合は、コードでスローしたいと思いClient
ます。スキーマの検証に失敗したというエラー メッセージが含まれている可能性があります。リクエストに有効な要素が含まれていません。
Mule 3.3 を使用していて、要素でXPath
検証を行っており、ブロック<choice>
で例外をスローしたいと考えています。<otherwise>
Soap Fault
ラバの流れで手動で投げる方法はありますか- カスタム障害文字列を追加する方法。の属性を
outInterceptor
使用していないため、が目的を解決するかどうかはわかりません。schemaValidation
<cxf:proxyService>
ここに私の流れの一部があります
<http:inbound-endpoint address="${service.address}" exchange-pattern="request-response">
<cxf:proxy-service wsdlLocation="classpath:service.wsdl" namespace="http://company.com/services/service" service="CompanyService" />
</http:inbound-endpoint>
<choice>
<when>.....</when>
<otherwise><!-- Here I want to throw Soap Fault ---></otherwise>
</choice>
<catch-exception-strategy>
<flow-ref name="generateErrorResponse" />
</catch-exception-strategy>