From 9eb37a77e95e5e71c3fd0267cd781dbc714454b3 Mon Sep 17 00:00:00 2001 From: Arjen Poutsma Date: Tue, 22 Mar 2011 11:21:27 +0000 Subject: [PATCH] SWS-698 - EndpointExceptionResolver is not registered autmaticaly when used togeter with tag --- .../AnnotationDrivenBeanDefinitionParser.java | 17 ----------------- ...nnotationDrivenBeanDefinitionParserTest.java | 12 ------------ 2 files changed, 29 deletions(-) diff --git a/core/src/main/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParser.java b/core/src/main/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParser.java index aa924b36..f0df99a0 100644 --- a/core/src/main/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParser.java +++ b/core/src/main/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParser.java @@ -39,8 +39,6 @@ import org.springframework.ws.server.endpoint.adapter.method.dom.XomPayloadMetho import org.springframework.ws.server.endpoint.adapter.method.jaxb.JaxbElementPayloadMethodProcessor; import org.springframework.ws.server.endpoint.adapter.method.jaxb.XmlRootElementPayloadMethodProcessor; import org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping; -import org.springframework.ws.soap.server.endpoint.SimpleSoapExceptionResolver; -import org.springframework.ws.soap.server.endpoint.SoapFaultAnnotationExceptionResolver; import org.springframework.ws.soap.server.endpoint.adapter.method.SoapMethodArgumentResolver; import org.springframework.ws.soap.server.endpoint.mapping.SoapActionAnnotationMethodEndpointMapping; @@ -79,8 +77,6 @@ class AnnotationDrivenBeanDefinitionParser implements BeanDefinitionParser { registerEndpointAdapters(element, source, parserContext); - registerEndpointExceptionResolvers(source, parserContext); - parserContext.popAndRegisterContainingComponent(); return null; @@ -176,19 +172,6 @@ class AnnotationDrivenBeanDefinitionParser implements BeanDefinitionParser { parserContext.getReaderContext().registerWithGeneratedName(adapterDef); } - private void registerEndpointExceptionResolvers(Object source, ParserContext parserContext) { - RootBeanDefinition simpleExceptionResolverDef = - createBeanDefinition(SimpleSoapExceptionResolver.class, source); - simpleExceptionResolverDef.getPropertyValues().add("order", 0); - parserContext.getReaderContext().registerWithGeneratedName(simpleExceptionResolverDef); - - RootBeanDefinition soapFaultAnnotationExceptionResolverDef = - createBeanDefinition(SoapFaultAnnotationExceptionResolver.class, source); - soapFaultAnnotationExceptionResolverDef.getPropertyValues().add("order", 1); - parserContext.getReaderContext().registerWithGeneratedName(soapFaultAnnotationExceptionResolverDef); - } - - private RuntimeBeanReference createBeanReference(Class beanClass, Object source, ParserContext parserContext) { RootBeanDefinition beanDefinition = createBeanDefinition(beanClass, source); String beanName = parserContext.getReaderContext().registerWithGeneratedName(beanDefinition); diff --git a/core/src/test/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParserTest.java b/core/src/test/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParserTest.java index d2737e5d..5c3596b5 100644 --- a/core/src/test/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParserTest.java +++ b/core/src/test/java/org/springframework/ws/config/AnnotationDrivenBeanDefinitionParserTest.java @@ -23,7 +23,6 @@ import java.util.Map; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.ws.server.EndpointAdapter; -import org.springframework.ws.server.EndpointExceptionResolver; import org.springframework.ws.server.EndpointMapping; import org.springframework.ws.server.endpoint.adapter.DefaultMethodEndpointAdapter; import org.springframework.ws.server.endpoint.adapter.method.MessageContextMethodArgumentResolver; @@ -39,8 +38,6 @@ import org.springframework.ws.server.endpoint.adapter.method.dom.XomPayloadMetho import org.springframework.ws.server.endpoint.adapter.method.jaxb.JaxbElementPayloadMethodProcessor; import org.springframework.ws.server.endpoint.adapter.method.jaxb.XmlRootElementPayloadMethodProcessor; import org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping; -import org.springframework.ws.soap.server.endpoint.SimpleSoapExceptionResolver; -import org.springframework.ws.soap.server.endpoint.SoapFaultAnnotationExceptionResolver; import org.springframework.ws.soap.server.endpoint.adapter.method.SoapMethodArgumentResolver; import org.springframework.ws.soap.server.endpoint.mapping.SoapActionAnnotationMethodEndpointMapping; @@ -71,15 +68,6 @@ public class AnnotationDrivenBeanDefinitionParserTest { assertContainsInstanceOf(result.values(), SoapActionAnnotationMethodEndpointMapping.class); } - @Test - public void endpointExceptionResolvers() { - Map result = - applicationContext.getBeansOfType(EndpointExceptionResolver.class); - assertEquals("invalid amount of endpoint mappings found", 2, result.size()); - assertContainsInstanceOf(result.values(), SimpleSoapExceptionResolver.class); - assertContainsInstanceOf(result.values(), SoapFaultAnnotationExceptionResolver.class); - } - @Test public void endpointAdapters() { Map result =