和往常一样,我在在线发布一个小时后解决了我的问题。我应该早点做!
我尝试覆盖的Bean名称/ ID不正确。扫描了大量的org.springframework.beans调试日志后,我发现正确的bean名称为soapFaultAnnotationExceptionResolver
。
我还设法将配置转换为Java形式:
package foo.bar.ws;
// Skipping imports...
/**
* WS configuration and WSDL deFinition
*/
@EnableWs
@Configuration
public class WebServiceConfig extends WsConfigurerAdapter {
public final static Logger logger = Logger.getLogger( WebServiceConfig.class );
// Skipping other bean declarations...
@Bean(name = "soapFaultAnnotationExceptionResolver")
public DetailSoapFaultDeFinitionExceptionResolver exceptionResolver( ApplicationContext applicationContext ){
DetailSoapFaultDeFinitionExceptionResolver exceptionResolver = new DetailSoapFaultDeFinitionExceptionResolver();
SoapFaultDeFinition soapFaultDeFinition = new SoapFaultDeFinition();
soapFaultDeFinition.setFaultCode( SoapFaultDeFinition.SERVER );
exceptionResolver.setDefaultFault( soapFaultDeFinition );
return exceptionResolver;
}
}