Here is a simple HelloWorld example, that I'm not sure how to configure to 
take in a List as a parameter...


IHelloWorldService.java
-----------------------------------------------------
package com.myeclipse.wsexample;

import java.util.List;

public interface IHelloWorldService {
 
        public String example(String message);
        public String exampleList(List messages);
 
}

HelloWorldServiceImpl.java
-----------------------------------------------------
package com.myeclipse.wsexample;

import java.util.List;

public class HelloWorldServiceImpl implements IHelloWorldService {
 
        public String example(String message) {
                return message;
        }
 
        public String exampleList(List messages){
                return "" + messages.size();
        }
}



HelloWorldServiceImpl.aegis.xml
-----------------------------------------------------
<mappings  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xsi:schemaLocation="http://xfire.codehaus.org/schemas/1.0/mapping.xsd";>
    <mapping>
        <method name="exampleList">
            <parameter index="0" componentType="java.lang.String"/>
        </method> 
   </mapping> 
</mappings>



services.xml
-----------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0";> 
        <service>
                <name>HelloWorldService</name>
                <serviceClass>
                        com.myeclipse.wsexample.IHelloWorldService
                </serviceClass>
                <implementationClass>
                        com.myeclipse.wsexample.HelloWorldServiceImpl
                </implementationClass>
                <style>rpc</style>
                <use>literal</use>
                <scope>application</scope>
                <properties>
                        <property key="writeXsiType">true</property>
                        <property key="overrideTypesList">
                      <list>
                        <value>java.lang.String</value>
                      </list>
                    </property> 
                </properties>
        </service>
</beans>


Startup Error
-----------------------------------------------------
pr 2, 2007 3:38:08 PM org.codehaus.xfire.transport.http.XFireServlet init
SEVERE: Error initializing XFireServlet.
org.springframework.beans.factory.BeanCreationException: Error creating 
bean with name 'org.codehaus.xfire.spring.ServiceBean' defined in class 
path resource [META-INF/xfire/services.xml]: Initialization of bean 
failed; nested exception is org.codehaus.xfire.XFireRuntimeException: 
Cannot create mapping for java.util.List, unspecified component type for 
parameter 0 of method exampleList in interface 
com.myeclipse.wsexample.IHelloWorldService
org.codehaus.xfire.XFireRuntimeException: Cannot create mapping for 
java.util.List, unspecified component type for parameter 0 of method 
exampleList in interface com.myeclipse.wsexample.IHelloWorldService
        at 
org.codehaus.xfire.aegis.type.DefaultTypeCreator.createCollectionType(
DefaultTypeCreator.java:43)
        at 
org.codehaus.xfire.aegis.type.XMLTypeCreator.createCollectionType(
XMLTypeCreator.java:137)
        at 
org.codehaus.xfire.aegis.type.AbstractTypeCreator.createTypeForClass(
AbstractTypeCreator.java:91)
        at org.codehaus.xfire.aegis.type.AbstractTypeCreator.createType(
AbstractTypeCreator.java:334)
        at org.codehaus.xfire.aegis.AegisBindingProvider.getSuggestedName(
AegisBindingProvider.java:226)
        at 
org.codehaus.xfire.service.binding.DefaultServiceConfiguration.getInParameterName(
DefaultServiceConfiguration.java:160)
        at 
org.codehaus.xfire.service.binding.ObjectServiceFactory.getInParameterName(
ObjectServiceFactory.java:1018)
        at 
org.codehaus.xfire.service.binding.ObjectServiceFactory.addOperation(
ObjectServiceFactory.java:776)
        at 
org.codehaus.xfire.service.binding.ObjectServiceFactory.initializeOperations(
ObjectServiceFactory.java:720)

Reply via email to