Author: veithen Date: Mon Mar 29 16:05:30 2010 New Revision: 928819 URL: http://svn.apache.org/viewvc?rev=928819&view=rev Log: AXIS2-4662: Some refactorings to the PoC code to support the standalone scenario, i.e. to create a ListenerManager using Spring.
Added: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java - copied, changed from r928727, axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java - copied, changed from r928727, axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java (with props) axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java (with props) Removed: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java Mon Mar 29 16:05:30 2010 @@ -23,8 +23,8 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; +import org.apache.axis2.context.ConfigurationContext; import org.apache.axis2.description.TransportInDescription; -import org.apache.axis2.engine.AxisConfiguration; import org.springframework.beans.BeansException; import org.springframework.beans.PropertyValue; import org.springframework.beans.factory.config.BeanDefinition; @@ -32,46 +32,47 @@ import org.springframework.beans.factory import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.config.RuntimeBeanReference; import org.springframework.beans.factory.support.ManagedList; +import org.springframework.util.StringUtils; public class AxisConfigurationBeanFactoryPostProcessor implements BeanFactoryPostProcessor { public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { - Map<String,BeanDefinition> axisConfigurations = new HashMap<String,BeanDefinition>(); - for (String name : beanFactory.getBeanNamesForType(AxisConfiguration.class)) { - axisConfigurations.put(name, beanFactory.getBeanDefinition(name)); + Map<String,BeanDefinition> configurationContextMap = new HashMap<String,BeanDefinition>(); + for (String name : beanFactory.getBeanNamesForType(ConfigurationContext.class)) { + configurationContextMap.put(name, beanFactory.getBeanDefinition(name)); } - processItems(beanFactory, axisConfigurations, TransportInDescription.class, "transportInDescriptions"); + processItems(beanFactory, configurationContextMap, TransportInDescription.class, "transportInDescriptions"); } private void processItems(ConfigurableListableBeanFactory beanFactory, - Map<String,BeanDefinition> axisConfigurationMap, + Map<String,BeanDefinition> configurationContextMap, Class<?> type, String propertyName) { for (String name : beanFactory.getBeanNamesForType(type)) { BeanDefinition item = beanFactory.getBeanDefinition(name); - String axisConfigurationName = (String)item.getPropertyValues().getPropertyValue(Constants.AXIS_CONFIGURATION_PROPERTY_NAME).getValue(); - Collection<BeanDefinition> axisConfigurations; - if (axisConfigurationName.length() == 0) { - axisConfigurations = axisConfigurationMap.values(); + String configurationContextName = (String)item.getPropertyValues().getPropertyValue(Constants.CONFIGURATION_CONTEXT_PROPERTY_NAME).getValue(); + Collection<BeanDefinition> configurationContexts; + if (!StringUtils.hasText(configurationContextName)) { + configurationContexts = configurationContextMap.values(); } else { - BeanDefinition axisConfiguration = axisConfigurationMap.get(axisConfigurationName); - if (axisConfiguration == null) { + BeanDefinition configurationContext = configurationContextMap.get(configurationContextName); + if (configurationContext == null) { throw new RuntimeException(); // TODO } else { - axisConfigurations = Collections.singleton(axisConfiguration); + configurationContexts = Collections.singleton(configurationContext); } } - for (BeanDefinition axisConfiguration : axisConfigurations) { - PropertyValue propertyValue = axisConfiguration.getPropertyValues().getPropertyValue(propertyName); + for (BeanDefinition configurationContext : configurationContexts) { + PropertyValue propertyValue = configurationContext.getPropertyValues().getPropertyValue(propertyName); ManagedList list; if (propertyValue == null) { list = new ManagedList(); - axisConfiguration.getPropertyValues().addPropertyValue(propertyName, list); + configurationContext.getPropertyValues().addPropertyValue(propertyName, list); } else { list = (ManagedList)propertyValue.getValue(); } list.add(new RuntimeBeanReference(name)); } - item.getPropertyValues().removePropertyValue(Constants.AXIS_CONFIGURATION_PROPERTY_NAME); + item.getPropertyValues().removePropertyValue(Constants.CONFIGURATION_CONTEXT_PROPERTY_NAME); } } } Copied: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java (from r928727, axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java) URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java?p2=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java&p1=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java&r1=928727&r2=928819&rev=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java Mon Mar 29 16:05:30 2010 @@ -18,11 +18,13 @@ */ package org.apache.axis2.spring; +import org.apache.axis2.context.ConfigurationContext; +import org.apache.axis2.context.ConfigurationContextFactory; import org.apache.axis2.description.TransportInDescription; import org.apache.axis2.engine.AxisConfiguration; import org.springframework.beans.factory.FactoryBean; -public class AxisConfigurationFactory implements FactoryBean { +public class ConfigurationContextFactoryBean implements FactoryBean { private TransportInDescription[] transportInDescriptions; public void setTransportInDescriptions(TransportInDescription[] transportInDescriptions) { @@ -30,7 +32,7 @@ public class AxisConfigurationFactory im } public Class getObjectType() { - return AxisConfiguration.class; + return ConfigurationContext.class; } public boolean isSingleton() { @@ -38,12 +40,13 @@ public class AxisConfigurationFactory im } public Object getObject() throws Exception { - AxisConfiguration config = new AxisConfiguration(); + ConfigurationContext configurationContext = ConfigurationContextFactory.createEmptyConfigurationContext(); + AxisConfiguration config = configurationContext.getAxisConfiguration(); if (transportInDescriptions != null) { for (TransportInDescription description : transportInDescriptions) { config.addTransportIn(description); } } - return config; + return configurationContext; } } Copied: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java (from r928727, axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java) URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java?p2=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java&p1=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java&r1=928727&r2=928819&rev=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java Mon Mar 29 16:05:30 2010 @@ -18,20 +18,23 @@ */ package org.apache.axis2.spring; +import org.springframework.beans.factory.BeanDefinitionStoreException; import org.springframework.beans.factory.config.BeanDefinition; +import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser; import org.springframework.beans.factory.xml.ParserContext; +import org.springframework.util.StringUtils; import org.w3c.dom.Element; -public class AxisConfigurationParser extends AbstractSingleBeanDefinitionParser { +public class ConfigurationContextParser extends AbstractSingleBeanDefinitionParser { private static final String BEAN_FACTORY_POST_PROCESSOR_BEAN_NAME = AxisConfigurationBeanFactoryPostProcessor.class.getName(); @Override protected Class getBeanClass(Element element) { - return AxisConfigurationFactory.class; + return ConfigurationContextFactoryBean.class; } @Override @@ -40,6 +43,13 @@ public class AxisConfigurationParser ext } @Override + protected String resolveId(Element element, AbstractBeanDefinition definition, ParserContext parserContext) + throws BeanDefinitionStoreException { + String id = element.getAttribute(ID_ATTRIBUTE); + return StringUtils.hasText(id) ? id : Constants.DEFAULT_CONFIGURATION_CONTEXT_BEAN_NAME; + } + + @Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { registerBeanFactoryPostProcessorIfNecessary(parserContext.getRegistry()); } Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java Mon Mar 29 16:05:30 2010 @@ -21,5 +21,7 @@ package org.apache.axis2.spring; public class Constants { private Constants() {} - public static final String AXIS_CONFIGURATION_PROPERTY_NAME = "__axisConfiguration__"; + public static final String CONFIGURATION_CONTEXT_PROPERTY_NAME = "__configurationContext__"; + + public static final String DEFAULT_CONFIGURATION_CONTEXT_BEAN_NAME = "_defaultConfigurationContext"; } Added: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java?rev=928819&view=auto ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java (added) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java Mon Mar 29 16:05:30 2010 @@ -0,0 +1,55 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.axis2.spring; + +import org.apache.axis2.context.ConfigurationContext; +import org.apache.axis2.engine.ListenerManager; +import org.springframework.beans.factory.DisposableBean; +import org.springframework.beans.factory.FactoryBean; +import org.springframework.beans.factory.InitializingBean; + +public class ListenerManagerFactoryBean implements FactoryBean, InitializingBean, DisposableBean { + private ConfigurationContext configurationContext; + private ListenerManager listenerManager; + + public void setConfigurationContext(ConfigurationContext configurationContext) { + this.configurationContext = configurationContext; + } + + public Class getObjectType() { + return ListenerManager.class; + } + + public boolean isSingleton() { + return true; + } + + public void afterPropertiesSet() throws Exception { + listenerManager = new ListenerManager(); + listenerManager.startSystem(configurationContext); + } + + public Object getObject() throws Exception { + return null; + } + + public void destroy() throws Exception { + listenerManager.destroy(); + } +} Propchange: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java ------------------------------------------------------------------------------ svn:eol-style = native Added: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java?rev=928819&view=auto ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java (added) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java Mon Mar 29 16:05:30 2010 @@ -0,0 +1,45 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.axis2.spring; + +import org.springframework.beans.factory.support.BeanDefinitionBuilder; +import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser; +import org.springframework.util.StringUtils; +import org.w3c.dom.Element; + +public class ListenerManagerParser extends AbstractSingleBeanDefinitionParser { + @Override + protected Class getBeanClass(Element element) { + return ListenerManagerFactoryBean.class; + } + + @Override + protected boolean shouldGenerateIdAsFallback() { + return true; + } + + @Override + protected void doParse(Element element, BeanDefinitionBuilder builder) { + String configurationContextName = element.getAttribute("configurationContext"); + if (!StringUtils.hasText(configurationContextName)) { + configurationContextName = Constants.DEFAULT_CONFIGURATION_CONTEXT_BEAN_NAME; + } + builder.addPropertyReference("configurationContext", configurationContextName); + } +} Propchange: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java Mon Mar 29 16:05:30 2010 @@ -22,7 +22,8 @@ import org.springframework.beans.factory public class NamespaceHandler extends NamespaceHandlerSupport { public void init() { - registerBeanDefinitionParser("axisConfiguration", new AxisConfigurationParser()); + registerBeanDefinitionParser("configurationContext", new ConfigurationContextParser()); registerBeanDefinitionParser("transportReceiver", new TransportReceiverParser()); + registerBeanDefinitionParser("listenerManager", new ListenerManagerParser()); } } Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java Mon Mar 29 16:05:30 2010 @@ -38,7 +38,7 @@ public class TransportReceiverParser ext @Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { builder.setScope(BeanDefinition.SCOPE_PROTOTYPE); - builder.addPropertyValue(Constants.AXIS_CONFIGURATION_PROPERTY_NAME, element.getAttribute("axisConfiguration")); + builder.addPropertyValue(Constants.CONFIGURATION_CONTEXT_PROPERTY_NAME, element.getAttribute("configurationContext")); builder.addPropertyValue("name", element.getAttribute("name")); BeanDefinitionBuilder receiver = BeanDefinitionBuilder.rootBeanDefinition(element.getAttribute("class")); receiver.setSource(parserContext.extractSource(element)); Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd Mon Mar 29 16:05:30 2010 @@ -31,7 +31,7 @@ </extension> </simpleContent> </complexType> - <element name="axisConfiguration"> + <element name="configurationContext"> <complexType> <complexContent> <extension base="beans:identifiedType"/> @@ -44,8 +44,13 @@ </sequence> <attribute name="name" type="string" use="required"/> <attribute name="class" type="string" use="required"/> - <attribute name="axisConfiguration" type="string" use="optional"/> + <attribute name="configurationContext" type="string" use="optional"/> </complexType> <element name="transportReceiver" type="tns:transportDescription"/> <element name="transportSender" type="tns:transportDescription"/> + <element name="listenerManager"> + <complexType> + <attribute name="configurationContext"/> + </complexType> + </element> </schema> \ No newline at end of file Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java Mon Mar 29 16:05:30 2010 @@ -20,17 +20,18 @@ package org.apache.axis2.spring; import java.util.Map; +import junit.framework.TestCase; + +import org.apache.axis2.context.ConfigurationContext; import org.apache.axis2.description.TransportInDescription; import org.apache.axis2.engine.AxisConfiguration; import org.springframework.context.support.ClassPathXmlApplicationContext; -import junit.framework.TestCase; - public class MultiConfigurationTest extends TestCase { public void test() { ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext("multi_configuration.xml"); - AxisConfiguration config1 = (AxisConfiguration)appContext.getBean("config1"); - AxisConfiguration config2 = (AxisConfiguration)appContext.getBean("config2"); + AxisConfiguration config1 = ((ConfigurationContext)appContext.getBean("config1")).getAxisConfiguration(); + AxisConfiguration config2 = ((ConfigurationContext)appContext.getBean("config2")).getAxisConfiguration(); Map<String,TransportInDescription> transports1 = config1.getTransportsIn(); Map<String,TransportInDescription> transports2 = config2.getTransportsIn(); assertEquals(2, transports1.size()); Modified: axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml?rev=928819&r1=928818&r2=928819&view=diff ============================================================================== --- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml (original) +++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml Mon Mar 29 16:05:30 2010 @@ -22,9 +22,9 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://axis.apache.org/spring-axis2 http://axis.apache.org/schema/spring-axis2.xsd"> - <axisConfiguration id="config1"/> - <axisConfiguration id="config2"/> + <configurationContext id="config1"/> + <configurationContext id="config2"/> <transportReceiver name="dummy1" class="org.apache.axis2.spring.DummyTransportListener"/> - <transportReceiver name="dummy2" class="org.apache.axis2.spring.DummyTransportListener" axisConfiguration="config1"/> - <transportReceiver name="dummy3" class="org.apache.axis2.spring.DummyTransportListener" axisConfiguration="config2"/> + <transportReceiver name="dummy2" class="org.apache.axis2.spring.DummyTransportListener" configurationContext="config1"/> + <transportReceiver name="dummy3" class="org.apache.axis2.spring.DummyTransportListener" configurationContext="config2"/> </beans:beans>