2013-07-12 47 views
2

使SOAP請求和驗證失敗時,響應我得到的回覆是:披風「春-WS」在驗證錯誤

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> 
    <SOAP-ENV:Header/> 
    <SOAP-ENV:Body> 
     <SOAP-ENV:Fault> 
     <faultcode>SOAP-ENV:Client</faultcode> 
     <faultstring xml:lang="en">Validation error</faultstring> 
     <detail> 
      <spring-ws:ValidationError xmlns:spring-ws="http://springframework.org/spring-ws">xyz-pattern-valid: Value '.....' is not facet-valid with respect to pattern '[0-9x]+' for type 'ABC'.</spring-ws:ValidationError> 
     </detail> 
     </SOAP-ENV:Fault> 
    </SOAP-ENV:Body> 
</SOAP-ENV:Envelope> 

有沒有得到無處不在擺脫春季-WS的方式這顯然暴露了底層SOAP服務使用Spring和Java?

我看過擴展PayloadValidatingInterceptor,但沒有看到明顯的方式來擺脫spring-ws標籤。

回答

3

想通了

public class ValidatingInterceptor extends PayloadValidatingInterceptor { 
    @Override 
    public QName getDetailElementName() { 
     return new QName("http://www.mycee.co.za", "tech", "mt"); 
    } 
} 

WOOT!