From 6ad7dd878df7ed41dd112b5a85095473118ecd52 Mon Sep 17 00:00:00 2001 From: Arjen Poutsma Date: Wed, 20 Feb 2008 01:02:18 +0000 Subject: [PATCH] SWS-290 --- .../MarshallingEndpointsBeanDefinitionParser.java | 10 +++------- .../config/Jaxb1MarshallerBeanDefinitionParser.java | 6 ++++-- .../config/Jaxb2MarshallerBeanDefinitionParser.java | 2 +- .../oxm/config/JibxMarshallerBeanDefinitionParser.java | 7 +++++-- .../config/XmlBeansMarshallerBeanDefinitionParser.java | 6 ++++-- 5 files changed, 17 insertions(+), 14 deletions(-) diff --git a/core/src/main/java/org/springframework/ws/config/MarshallingEndpointsBeanDefinitionParser.java b/core/src/main/java/org/springframework/ws/config/MarshallingEndpointsBeanDefinitionParser.java index 9588e4fe..06a2a5e7 100644 --- a/core/src/main/java/org/springframework/ws/config/MarshallingEndpointsBeanDefinitionParser.java +++ b/core/src/main/java/org/springframework/ws/config/MarshallingEndpointsBeanDefinitionParser.java @@ -35,6 +35,8 @@ class MarshallingEndpointsBeanDefinitionParser extends AbstractSimpleBeanDefinit private static final String GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME = "org.springframework.ws.server.endpoint.adapter.GenericMarshallingMethodEndpointAdapter"; + private static final boolean genericAdapterPresent = ClassUtils.isPresent(GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME); + private static final String MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME = "org.springframework.ws.server.endpoint.adapter.MarshallingMethodEndpointAdapter"; @@ -43,14 +45,8 @@ class MarshallingEndpointsBeanDefinitionParser extends AbstractSimpleBeanDefinit } protected String getBeanClassName(Element element) { - if (JdkVersion.isAtLeastJava15()) { - try { - ClassUtils.forName(GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME); + if (JdkVersion.isAtLeastJava15() && genericAdapterPresent) { return GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME; - } - catch (ClassNotFoundException e) { - // ignore, fall through; - } } return MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME; } diff --git a/oxm/src/main/java/org/springframework/oxm/config/Jaxb1MarshallerBeanDefinitionParser.java b/oxm/src/main/java/org/springframework/oxm/config/Jaxb1MarshallerBeanDefinitionParser.java index ffa67bc5..c0d59932 100644 --- a/oxm/src/main/java/org/springframework/oxm/config/Jaxb1MarshallerBeanDefinitionParser.java +++ b/oxm/src/main/java/org/springframework/oxm/config/Jaxb1MarshallerBeanDefinitionParser.java @@ -16,7 +16,9 @@ import org.w3c.dom.Element; */ class Jaxb1MarshallerBeanDefinitionParser extends AbstractSimpleBeanDefinitionParser { - protected Class getBeanClass(Element element) { - return Jaxb1Marshaller.class; + public static final String JAXB1_MARSHALLER_CLASS_NAME = "org.springframework.oxm.jaxb.Jaxb1Marshaller"; + + protected String getBeanClassName(Element element) { + return JAXB1_MARSHALLER_CLASS_NAME; } } diff --git a/oxm/src/main/java/org/springframework/oxm/config/Jaxb2MarshallerBeanDefinitionParser.java b/oxm/src/main/java/org/springframework/oxm/config/Jaxb2MarshallerBeanDefinitionParser.java index 0ae656e7..b9b44e30 100644 --- a/oxm/src/main/java/org/springframework/oxm/config/Jaxb2MarshallerBeanDefinitionParser.java +++ b/oxm/src/main/java/org/springframework/oxm/config/Jaxb2MarshallerBeanDefinitionParser.java @@ -35,7 +35,7 @@ import org.w3c.dom.Element; */ class Jaxb2MarshallerBeanDefinitionParser extends AbstractSingleBeanDefinitionParser { - public static final String JAXB2_MARSHALLER_CLASS_NAME = "org.springframework.oxm.jaxb.Jaxb2Marshaller"; + private static final String JAXB2_MARSHALLER_CLASS_NAME = "org.springframework.oxm.jaxb.Jaxb2Marshaller"; protected String getBeanClassName(Element element) { return JAXB2_MARSHALLER_CLASS_NAME; diff --git a/oxm/src/main/java/org/springframework/oxm/config/JibxMarshallerBeanDefinitionParser.java b/oxm/src/main/java/org/springframework/oxm/config/JibxMarshallerBeanDefinitionParser.java index 1bec98d8..035a75e7 100644 --- a/oxm/src/main/java/org/springframework/oxm/config/JibxMarshallerBeanDefinitionParser.java +++ b/oxm/src/main/java/org/springframework/oxm/config/JibxMarshallerBeanDefinitionParser.java @@ -16,7 +16,10 @@ import org.w3c.dom.Element; */ class JibxMarshallerBeanDefinitionParser extends AbstractSimpleBeanDefinitionParser { - protected Class getBeanClass(Element element) { - return JibxMarshaller.class; + private static final String JIBX_MARSHALLER_CLASS_NAME = "org.springframework.oxm.jibx.JibxMarshaller"; + + protected String getParentName(Element element) { + return JIBX_MARSHALLER_CLASS_NAME; } + } \ No newline at end of file diff --git a/oxm/src/main/java/org/springframework/oxm/config/XmlBeansMarshallerBeanDefinitionParser.java b/oxm/src/main/java/org/springframework/oxm/config/XmlBeansMarshallerBeanDefinitionParser.java index f064fd3b..bbdf0063 100644 --- a/oxm/src/main/java/org/springframework/oxm/config/XmlBeansMarshallerBeanDefinitionParser.java +++ b/oxm/src/main/java/org/springframework/oxm/config/XmlBeansMarshallerBeanDefinitionParser.java @@ -19,8 +19,10 @@ import org.w3c.dom.Element; */ class XmlBeansMarshallerBeanDefinitionParser extends AbstractSingleBeanDefinitionParser { - protected Class getBeanClass(Element element) { - return XmlBeansMarshaller.class; + public static final String XML_BEANS_MARSHALLER_CLASS_NAME = "org.springframework.oxm.xmlbeans.XmlBeansMarshaller"; + + protected String getBeanClassName(Element element) { + return XML_BEANS_MARSHALLER_CLASS_NAME; } protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder beanDefinitionBuilder) {