Author: veithen
Date: Tue Mar 30 10:57:11 2010
New Revision: 929077

URL: http://svn.apache.org/viewvc?rev=929077&view=rev
Log:
AXIS2-4662: Some more PoC code that shows how POJO service deployment with 
Spring could look like.

Added:
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ParameterUtil.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceFactoryBean.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceParser.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/SpringServiceObjectSupplier.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportDescriptionFactoryBean.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactoryBean.java
      - copied, changed from r928727, 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactory.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportOutDescriptionFactoryBean.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportParser.java
      - copied, changed from r928819, 
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/axis2_default_spring.xml
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherServiceRunner.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherSpringService.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/context.xml
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/log4j.properties
   (with props)
Removed:
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactory.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java
Modified:
    axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/pom.xml
    
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/ConfigurationContextFactoryBean.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/resources/schemas/spring-axis2.xsd

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/pom.xml
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/pom.xml?rev=929077&r1=929076&r2=929077&view=diff
==============================================================================
--- axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/pom.xml 
(original)
+++ axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/pom.xml 
Tue Mar 30 10:57:11 2010
@@ -62,6 +62,17 @@
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.apache.axis2</groupId>
+            <artifactId>axis2-adb</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
     <build>
         <plugins>

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=929077&r1=929076&r2=929077&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
 Tue Mar 30 10:57:11 2010
@@ -25,6 +25,7 @@ import java.util.Map;
 
 import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.TransportInDescription;
+import org.apache.axis2.description.TransportOutDescription;
 import org.springframework.beans.BeansException;
 import org.springframework.beans.PropertyValue;
 import org.springframework.beans.factory.config.BeanDefinition;
@@ -41,6 +42,7 @@ public class AxisConfigurationBeanFactor
             configurationContextMap.put(name, 
beanFactory.getBeanDefinition(name));
         }
         processItems(beanFactory, configurationContextMap, 
TransportInDescription.class, "transportInDescriptions");
+        processItems(beanFactory, configurationContextMap, 
TransportOutDescription.class, "transportOutDescriptions");
     }
 
     private void processItems(ConfigurableListableBeanFactory beanFactory,

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.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?rev=929077&r1=929076&r2=929077&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java
 Tue Mar 30 10:57:11 2010
@@ -21,32 +21,49 @@ 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.description.TransportOutDescription;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.springframework.beans.factory.FactoryBean;
+import org.springframework.beans.factory.InitializingBean;
 
-public class ConfigurationContextFactoryBean implements FactoryBean {
+public class ConfigurationContextFactoryBean implements FactoryBean, 
InitializingBean {
     private TransportInDescription[] transportInDescriptions;
+    private TransportOutDescription[] transportOutDescriptions;
+    private ConfigurationContext configurationContext;
     
     public void setTransportInDescriptions(TransportInDescription[] 
transportInDescriptions) {
         this.transportInDescriptions = transportInDescriptions;
     }
 
-    public Class getObjectType() {
+    public void setTransportOutDescriptions(TransportOutDescription[] 
transportOutDescriptions) {
+        this.transportOutDescriptions = transportOutDescriptions;
+    }
+
+    public Class<?> getObjectType() {
         return ConfigurationContext.class;
     }
 
     public boolean isSingleton() {
-        return false;
+        return true;
     }
 
-    public Object getObject() throws Exception {
-        ConfigurationContext configurationContext = 
ConfigurationContextFactory.createEmptyConfigurationContext();
+    public void afterPropertiesSet() throws Exception {
+        configurationContext = 
ConfigurationContextFactory.createBasicConfigurationContext("axis2_default_spring.xml");
+//      configurationContext = 
ConfigurationContextFactory.createEmptyConfigurationContext();
         AxisConfiguration config = configurationContext.getAxisConfiguration();
         if (transportInDescriptions != null) {
             for (TransportInDescription description : transportInDescriptions) 
{
                 config.addTransportIn(description);
             }
         }
+        if (transportOutDescriptions != null) {
+            for (TransportOutDescription description : 
transportOutDescriptions) {
+                config.addTransportOut(description);
+            }
+        }
+    }
+
+    public Object getObject() throws Exception {
         return configurationContext;
     }
 }

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=929077&r1=929076&r2=929077&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
 Tue Mar 30 10:57:11 2010
@@ -23,7 +23,9 @@ import org.springframework.beans.factory
 public class NamespaceHandler extends NamespaceHandlerSupport {
     public void init() {
         registerBeanDefinitionParser("configurationContext", new 
ConfigurationContextParser());
-        registerBeanDefinitionParser("transportReceiver", new 
TransportReceiverParser());
+        registerBeanDefinitionParser("transportReceiver", new 
TransportParser(TransportInDescriptionFactoryBean.class, "receiver"));
+        registerBeanDefinitionParser("transportSender", new 
TransportParser(TransportOutDescriptionFactoryBean.class, "sender"));
         registerBeanDefinitionParser("listenerManager", new 
ListenerManagerParser());
+        registerBeanDefinitionParser("pojoService", new PojoServiceParser());
     }
 }

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ParameterUtil.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/ParameterUtil.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ParameterUtil.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ParameterUtil.java
 Tue Mar 30 10:57:11 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 java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.apache.axis2.description.Parameter;
+import org.springframework.util.xml.DomUtils;
+import org.w3c.dom.Element;
+
+public class ParameterUtil {
+    private ParameterUtil() {}
+    
+    public static List<Parameter> parseParameters(Element parent) {
+        List elements = DomUtils.getChildElementsByTagName(parent, 
"parameter");
+        List<Parameter> parameters = new ArrayList<Parameter>(elements.size());
+        for (Iterator it = elements.iterator(); it.hasNext(); ) {
+            Element element = (Element)it.next();
+            Parameter parameter = new Parameter(element.getAttribute("name"), 
element.getTextContent());
+            if ("true".equals(element.getAttribute("locked"))) {
+                parameter.setLocked(true);
+            }
+            parameters.add(parameter);
+        }
+        return parameters;
+    }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ParameterUtil.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceFactoryBean.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/PojoServiceFactoryBean.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceFactoryBean.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceFactoryBean.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,61 @@
+/*
+ * 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.Constants;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.engine.AxisConfiguration;
+import org.springframework.beans.factory.FactoryBean;
+import org.springframework.beans.factory.InitializingBean;
+
+public class PojoServiceFactoryBean implements FactoryBean, InitializingBean {
+    private ConfigurationContext configurationContext;
+    private Object serviceObject;
+    private AxisService service;
+    
+    public void setConfigurationContext(ConfigurationContext 
configurationContext) {
+        this.configurationContext = configurationContext;
+    }
+
+    public void setServiceObject(Object serviceObject) {
+        this.serviceObject = serviceObject;
+    }
+
+    public Class<?> getObjectType() {
+        return AxisService.class;
+    }
+
+    public boolean isSingleton() {
+        return true;
+    }
+
+    public void afterPropertiesSet() throws Exception {
+        String serviceClassName = serviceObject.getClass().getName();
+        AxisConfiguration axisConfig = 
configurationContext.getAxisConfiguration();
+        service = AxisService.createService(serviceClassName, axisConfig);
+        service.addParameter(Constants.SERVICE_OBJECT_SUPPLIER, 
SpringServiceObjectSupplier.class.getName());
+        
service.addParameter(SpringServiceObjectSupplier.SERVICE_SPRING_BEANNAME, 
serviceObject);
+        axisConfig.addService(service);
+    }
+
+    public Object getObject() throws Exception {
+        return service;
+    }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceFactoryBean.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceParser.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/PojoServiceParser.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceParser.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceParser.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,46 @@
+/*
+ * 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 PojoServiceParser extends AbstractSingleBeanDefinitionParser {
+    @Override
+    protected Class<?> getBeanClass(Element element) {
+        return PojoServiceFactoryBean.class;
+    }
+
+    @Override
+    protected boolean shouldGenerateId() {
+        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);
+        builder.addPropertyReference("serviceObject", 
element.getAttribute("bean"));
+    }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/PojoServiceParser.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/SpringServiceObjectSupplier.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/SpringServiceObjectSupplier.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/SpringServiceObjectSupplier.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/SpringServiceObjectSupplier.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,38 @@
+package org.apache.axis2.spring;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.ServiceObjectSupplier;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.Parameter;
+import org.apache.axis2.i18n.Messages;
+
+/**
+ * This class provides an AxisService with its corresponding Spring managed
+ * Service implementation if it exists in springBeans map.
+ * 
+ * @author Stephan van Hugten
+ * 
+ */
+public class SpringServiceObjectSupplier implements ServiceObjectSupplier {
+
+       public static final String SERVICE_SPRING_BEANNAME = "SpringBeanName";
+
+       /*
+        * (non-Javadoc)
+        * 
+        * @see
+        * 
org.apache.axis2.ServiceObjectSupplier#getServiceObject(org.apache.axis2
+        * .description.AxisService)
+        */
+       public Object getServiceObject(AxisService axisService) throws 
AxisFault {
+               Parameter serviceSpringBeanName = axisService
+                               .getParameter(SERVICE_SPRING_BEANNAME);
+               if (serviceSpringBeanName != null) {
+                       return serviceSpringBeanName.getValue();
+               } else {
+                       throw new 
AxisFault(Messages.getMessage("paramIsNotSpecified",
+                                       "SERVICE_SPRING_BEANNAME"));
+               }
+       }
+
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/SpringServiceObjectSupplier.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportDescriptionFactoryBean.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/TransportDescriptionFactoryBean.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportDescriptionFactoryBean.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportDescriptionFactoryBean.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,52 @@
+/*
+ * 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 java.util.List;
+
+import org.apache.axis2.description.Parameter;
+import org.apache.axis2.description.ParameterInclude;
+import org.springframework.beans.factory.FactoryBean;
+
+public abstract class TransportDescriptionFactoryBean implements FactoryBean {
+    private String name;
+    private List<Parameter> parameters;
+    
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public void setParameters(List<Parameter> parameters) {
+        this.parameters = parameters;
+    }
+
+    public boolean isSingleton() {
+        return false;
+    }
+
+    public Object getObject() throws Exception {
+        ParameterInclude description = createDescription(name);
+        for (Parameter parameter : parameters) {
+            description.addParameter(parameter);
+        }
+        return description;
+    }
+
+    protected abstract ParameterInclude createDescription(String name);
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportDescriptionFactoryBean.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactoryBean.java
 (from r928727, 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactory.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/TransportInDescriptionFactoryBean.java?p2=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactoryBean.java&p1=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactory.java&r1=928727&r2=929077&rev=929077&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactory.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportInDescriptionFactoryBean.java
 Tue Mar 30 10:57:11 2010
@@ -18,31 +18,23 @@
  */
 package org.apache.axis2.spring;
 
+import org.apache.axis2.description.ParameterInclude;
 import org.apache.axis2.description.TransportInDescription;
 import org.apache.axis2.transport.TransportListener;
-import org.springframework.beans.factory.FactoryBean;
 
-public class TransportInDescriptionFactory implements FactoryBean {
-    private String name;
+public class TransportInDescriptionFactoryBean extends 
TransportDescriptionFactoryBean {
     private TransportListener receiver;
     
-    public void setName(String name) {
-        this.name = name;
-    }
-
     public void setReceiver(TransportListener receiver) {
         this.receiver = receiver;
     }
 
-    public Class getObjectType() {
+    public Class<?> getObjectType() {
         return TransportInDescription.class;
     }
 
-    public boolean isSingleton() {
-        return false;
-    }
-
-    public Object getObject() throws Exception {
+    @Override
+    protected ParameterInclude createDescription(String name) {
         TransportInDescription description = new TransportInDescription(name);
         description.setReceiver(receiver);
         return description;

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportOutDescriptionFactoryBean.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/TransportOutDescriptionFactoryBean.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportOutDescriptionFactoryBean.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportOutDescriptionFactoryBean.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,43 @@
+/*
+ * 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.description.ParameterInclude;
+import org.apache.axis2.description.TransportOutDescription;
+import org.apache.axis2.transport.TransportSender;
+
+public class TransportOutDescriptionFactoryBean extends 
TransportDescriptionFactoryBean {
+    private TransportSender sender;
+    
+    public void setSender(TransportSender sender) {
+        this.sender = sender;
+    }
+
+    public Class<?> getObjectType() {
+        return TransportOutDescription.class;
+    }
+
+    @Override
+    protected ParameterInclude createDescription(String name) {
+        TransportOutDescription description = new 
TransportOutDescription(name);
+        description.setSender(sender);
+        return description;
+    }
+}
+

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportOutDescriptionFactoryBean.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportParser.java
 (from r928819, 
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/TransportParser.java?p2=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportParser.java&p1=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java&r1=928819&r2=929077&rev=929077&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/TransportParser.java
 Tue Mar 30 10:57:11 2010
@@ -24,10 +24,18 @@ import org.springframework.beans.factory
 import org.springframework.beans.factory.xml.ParserContext;
 import org.w3c.dom.Element;
 
-public class TransportReceiverParser extends 
AbstractSingleBeanDefinitionParser {
+public class TransportParser extends AbstractSingleBeanDefinitionParser {
+    private final Class<?> beanClass;
+    private final String propertyName;
+    
+    public TransportParser(Class<?> beanClass, String propertyName) {
+        this.beanClass = beanClass;
+        this.propertyName = propertyName;
+    }
+
     @Override
-    protected Class getBeanClass(Element element) {
-        return TransportInDescriptionFactory.class;
+    protected Class<?> getBeanClass(Element element) {
+        return beanClass;
     }
 
     @Override
@@ -42,6 +50,7 @@ public class TransportReceiverParser ext
         builder.addPropertyValue("name",  element.getAttribute("name"));
         BeanDefinitionBuilder receiver = 
BeanDefinitionBuilder.rootBeanDefinition(element.getAttribute("class"));
         receiver.setSource(parserContext.extractSource(element));
-        builder.addPropertyValue("receiver", receiver.getBeanDefinition());
+        builder.addPropertyValue(propertyName, receiver.getBeanDefinition());
+        builder.addPropertyValue("parameters", 
ParameterUtil.parseParameters(element));
     }
 }

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/axis2_default_spring.xml
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/axis2_default_spring.xml?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/axis2_default_spring.xml
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/axis2_default_spring.xml
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,248 @@
+<!--
+  ~ 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.
+  -->
+
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">true</parameter>
+    <parameter name="hotupdate">false</parameter>
+    <parameter name="enableMTOM">false</parameter>
+
+    <!--If turned on with use the Accept header of the request to determine 
the contentType of the
+    response-->
+    <parameter name="httpContentNegotiation">false</parameter>
+
+    <!--During a fault, stacktrace can be sent with the fault message. The 
following flag will control -->
+    <!--that behaviour.-->
+    <parameter name="sendStacktraceDetailsWithFaults">true</parameter>
+
+    <!--If there aren't any information available to find out the fault 
reason, we set the message of the exception-->
+    <!--as the faultreason/Reason. But when a fault is thrown from a service 
or some where, it will be -->
+    <!--wrapped by different levels. Due to this the initial exception message 
can be lost. If this flag-->
+    <!--is set then, Axis2 tries to get the first exception and set its 
message as the faultreason/Reason.-->
+    <parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
+
+    <!--This is the user name and password of admin console-->
+    <parameter name="userName">admin</parameter>
+    <parameter name="password">axis2</parameter>
+
+    <!--To override repository/services you need to uncomment following 
parameter and value SHOULD be absolute file path.-->
+    <!--ServicesDirectory only works on the following cases-->
+    <!---File based configurator and in that case the value should be a file 
URL (http:// not allowed)-->
+    <!---When creating URL Based configurator with URL “file://”  -->
+    <!--- War based configurator with expanded case , -->
+
+    <!--All the other scenarios it will be ignored.-->
+    <!--<parameter name="ServicesDirectory">service</parameter>-->
+    <!--To override repository/modules you need to uncomment following 
parameter and value SHOULD be absolute file path-->
+    <!--<parameter name="ModulesDirectory">modules</parameter>-->
+
+    <!--Following params will set the proper context paths for invocations. 
All the endpoints will have a commons context-->
+    <!--root which can configured using the following contextRoot parameter-->
+    <!--<parameter name="contextRoot">axis2</parameter>-->
+
+    <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters 
can be used to distinguish those endpoints-->
+    <!--<parameter name="servicePath">services</parameter>-->
+    <!--<parameter name="restPath">rest</parameter>-->
+
+    <!-- Following parameter will completely disable REST handling in Axis2-->
+    <parameter name="disableREST" locked="false">false</parameter>
+
+    <!--POJO deployer , this will alow users to drop .class file and make that 
into a service-->
+    <deployer extension=".class" directory="pojo" 
class="org.apache.axis2.deployment.POJODeployer"/>
+    <deployer extension=".jar" directory="transports" 
class="org.apache.axis2.deployment.TransportDeployer"/>
+
+    <!-- Following parameter will set the host name for the epr-->
+    <!--<parameter name="hostname" locked="true">myhost.com</parameter>-->
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!--This is the Default Message Receiver for the system , if you want to 
have MessageReceivers for -->
+    <!--all the other MEP implement it and add the correct entry to here , so 
that you can refer from-->
+    <!--any operation -->
+    <!--Note : You can override this for particular service by adding the same 
element with your requirement-->
+    <messageReceivers>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only";
+                         
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out";
+                         
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-only";
+                         
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-out";
+                         
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+    </messageReceivers>
+
+    <!-- ================================================= -->
+    <!-- Message Formatter -->
+    <!-- ================================================= -->
+    <!--Following content type to message formatter mapping can be used to 
implement support for different message -->
+    <!--format  serialization in Axis2. These message formats are expected to 
be resolved based on the content type. -->
+    <messageFormatters>
+        <messageFormatter contentType="application/x-www-form-urlencoded"
+                         
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
+        <messageFormatter contentType="multipart/form-data"
+                         
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
+        <messageFormatter contentType="application/xml"
+                         
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
+        <messageFormatter contentType="text/xml"
+                         
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
+        <messageFormatter contentType="application/soap+xml"
+                         
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
+    </messageFormatters>
+
+    <!-- ================================================= -->
+    <!-- Message Builders -->
+    <!-- ================================================= -->
+    <!--Following content type to builder mapping can be used to implement 
support for different message -->
+    <!--formats in Axis2. These message formats are expected to be resolved 
based on the content type. -->
+    <messageBuilders>
+        <messageBuilder contentType="application/xml"
+                         
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
+        <messageBuilder contentType="application/x-www-form-urlencoded"
+                         
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
+        <!--Left commented because it adds the depandancy of servlet-api to 
other modules.
+        Please uncomment to Receive messages in multipart/form-data format-->
+        <!--<messageBuilder contentType="multipart/form-data"-->
+                         
<!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>-->
+    </messageBuilders>
+
+    <!-- ================================================= -->
+    <!-- Target Resolvers -->
+    <!-- ================================================= -->
+    <!-- Uncomment the following and specify the class name for your 
TargetResolver to add -->
+    <!-- a TargetResolver. TargetResolvers are used to process the To EPR for 
example to -->
+    <!-- choose a server in a cluster -->
+    <!--<targetResolvers>-->
+    <!--<targetResolver class="" />-->
+    <!--</targetResolvers>-->
+
+    <!-- ================================================= -->
+    <!--  SOAP Role Configuration                          -->
+    <!-- ================================================= -->
+    <!-- Use the following pattern to configure this axis2
+         instance to act in particular roles. Note that in
+         the absence of any configuration, Axis2 will act 
+         only in the ultimate receiver role -->
+    <!--
+    <SOAPRoleConfiguration isUltimateReceiver="true">
+       <role>http://my/custom/role</role>
+    </SOAPRoleConfiguration>
+       -->
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="InFlow">
+        <!--  System pre-defined phases       -->
+         <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+         </phase>
+        <phase name="Addressing">
+            <handler name="AddressingBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
+                <order phase="Addressing"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+            <handler name="RequestURIOperationDispatcher"
+                     
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+
+            <handler name="HTTPLocationBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+        </phase>
+        <!--  System pre defined phases       -->
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+        <!--   After Postdispatch phase module author or or service author can 
add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+           <phase name="Security"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+        </phase>
+        <phase name="Addressing">
+             <handler name="AddressingBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
+                 <order phase="Addressing"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+            <handler name="RequestURIOperationDispatcher"
+                     
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+
+            <handler name="HTTPLocationBasedDispatcher"
+                     
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+        </phase>
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="RMPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+        <phase name="Security"/>
+    </phaseOrder>
+</axisconfig>
\ No newline at end of file

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/axis2_default_spring.xml
------------------------------------------------------------------------------
    svn:eol-style = native

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=929077&r1=929076&r2=929077&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
 Tue Mar 30 10:57:11 2010
@@ -50,7 +50,13 @@
     <element name="transportSender" type="tns:transportDescription"/>
     <element name="listenerManager">
         <complexType>
-            <attribute name="configurationContext"/>
+            <attribute name="configurationContext" use="optional"/>
         </complexType>
     </element>
-</schema>
\ No newline at end of file
+    <element name="pojoService">
+        <complexType>
+            <attribute name="configurationContext" use="optional"/>
+            <attribute name="bean" use="required"/>
+        </complexType>
+    </element>
+</schema>

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherServiceRunner.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/WeatherServiceRunner.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherServiceRunner.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherServiceRunner.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,12 @@
+package org.apache.axis2.spring;
+
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+
+public class WeatherServiceRunner {
+    public static void main(String[] args) throws Exception {
+        ClassPathXmlApplicationContext appContext = new 
ClassPathXmlApplicationContext("context.xml");
+        synchronized (WeatherServiceRunner.class) {
+            WeatherServiceRunner.class.wait();
+        }
+    }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherServiceRunner.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherSpringService.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/WeatherSpringService.java?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherSpringService.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherSpringService.java
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,15 @@
+package org.apache.axis2.spring;
+
+import javax.jws.WebMethod;
+import javax.jws.WebService;
+
+...@webservice(name="WeatherSpringService",
+targetNamespace="http://example.com/ns";,
+serviceName="WeatherService")
+public class WeatherSpringService {
+
+       @WebMethod(action="http://example.com/actions/getTodaysWeather";)
+       public String getTodaysWeather() {
+               return "Today it's 90 degrees outside!";
+       }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/WeatherSpringService.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/context.xml
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/context.xml?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/context.xml
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/context.xml
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<beans:beans xmlns:beans="http://www.springframework.org/schema/beans";
+             xmlns="http://axis.apache.org/spring-axis2";
+             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";>
+    <configurationContext/>
+    <transportReceiver name="http" 
class="org.apache.axis2.transport.http.SimpleHTTPServer">
+        <parameter name="port">6060</parameter>
+    </transportReceiver>
+    <transportSender name="http" 
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding">chunked</parameter>
+    </transportSender>
+    <listenerManager/>
+    <pojoService bean="weatherService"/>
+    <beans:bean id="weatherService" 
class="org.apache.axis2.spring.WeatherSpringService"/>
+</beans:beans>

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/context.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/log4j.properties
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/log4j.properties?rev=929077&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/log4j.properties
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/log4j.properties
 Tue Mar 30 10:57:11 2010
@@ -0,0 +1,23 @@
+#
+# 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.
+#
+log4j.rootCategory=DEBUG, CONSOLE
+
+log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
+log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
+log4j.appender.CONSOLE.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/log4j.properties
------------------------------------------------------------------------------
    svn:executable = *


Reply via email to