1
請讓我知道如何在彈簧集成中從服務激活器中拋出自定義SOAP錯誤。如果我有一個errorChannel的服務激活器,那麼處理方法的返回值應該是什麼?彈簧集成中的自定義SOAP故障
請讓我知道如何在彈簧集成中從服務激活器中拋出自定義SOAP錯誤。如果我有一個errorChannel的服務激活器,那麼處理方法的返回值應該是什麼?彈簧集成中的自定義SOAP故障
Spring Integration WS模塊完全基於Spring WS項目。解決您的需求的最佳方法是遵循標準方法:http://docs.spring.io/spring-ws/docs/current/reference/html/server.html#server-endpoint-exception-resolver。
我會跟着一些事情像@SoapFault一些業務異常,並不會擔心錯誤通道!
嗨,我明白了你的觀點。但是,我可以在飛行中自定義faultStringOrReason。例如,下面是我的soap故障類@SoapFault(faultCode = FaultCode.CUSTOM,customFaultCode =「{namespace}服務器錯誤」,faultStringOrReason =「處理請求消息時遇到錯誤」。) public class SystemFault extends BusinessException {}。我期待的是a)如果引發了新的SystemFault(),則故障串應該是「處理請求消息時遇到的錯誤」。 。如果我拋出新的SystemFault(「自定義消息」),faultstring應該是「自定義消息」 –
好吧,爲此,我想你應該實現你自己的'AbstractSoapFaultDefinitionExceptionResolver'並決定將什麼放入'SoapFaultDefinitionEditor'中。有關詳細信息,請參見SoapFaultMappingExceptionResolver。 –
嗨Artem ..明白它的工作。還有一個問題。在自定義錯誤代碼的情況下,有沒有辦法不指定命名空間?如果我指定了命名空間,則錯誤代碼爲自定義錯誤代碼<.faultcode>。但是,我應該如何防止xmlns與錯誤代碼一起打印? –