0

Spring セキュリティからの例外を Spring Web サービスの SOAP 障害としてカスケードする解決策を考えようとしています。

Spring Web サービスを使用し、 を使用して認証を行いますSimplePlainTextPasswordValidationCallbackHandler。ただし、Spring セキュリティ内からのすべてのカスタマイズされた例外は、SOAP 応答で「無効な SOAP ヘッダー」として出力されます。これがデフォルトの動作であると考えられています。

この動作をオーバーライドして、カスタマイズした例外を Spring WS にカスケードする方法はありますか?

ありがとう。

4

1 に答える 1

0

このためには、XwsSecurityInterceptor の handleValidationException メソッドが例外をこのリゾルバーに委譲するため、EndpointExceptionResolver を実装する必要あります。または、次のように SoapFaultMappingExceptionResolver を applicationContext.xml に単純に追加することもできます。

<beans>
<bean id="exceptionResolver" class="org.springframework.ws.soap.server.endpoint.SoapFaultMappingExceptionResolver">
    <property name="defaultFault" value="SERVER"/>
    <property name="exceptionMappings">
        <value>
            org.springframework.oxm.ValidationFailureException=CLIENT,Oops!Something went wrong
        </value>
    </property>
</bean>
</beans>

詳細はこちら

于 2012-04-21T22:33:18.817 に答える