简体   繁体   English

验证错误中的披风“Spring-WS”

[英]Cloak “Spring-WS” in validation errors

When making a SOAP request and validation fails, the response I'm getting back is: 在发出SOAP请求并且验证失败时,我得到的响应是:

<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>

Is there a way to get rid of the spring-ws everywhere which is obviously exposing that the underlying SOAP service is using Spring and Java? 有没有办法摆脱各地的spring-ws显然暴露了底层SOAP服务使用的是Spring和Java?

I've looked at extending PayloadValidatingInterceptor, but see no obvious way to get rid of the spring-ws tags. 我已经看过扩展PayloadValidatingInterceptor,但是看不到明显的方法来摆脱spring-ws标签。

Figured it out 弄清楚了

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

WOOT! WOOT!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM