Hi Bob. Have you tried using the Aegis inheritance config with your
original test (DataAddendum)? Doing inheritance with java.lang.String seems
kind of weird.
Also, I have had trouble using the List and Map support with java.lang.*
types (see XFIRE-518).
-- Matt
On 4/2/07 1:39 PM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
wrote:
>
> 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(DefaultT
> ypeCreator.java:43)
> at
> org.codehaus.xfire.aegis.type.XMLTypeCreator.createCollectionType(XMLTypeCreat
> or.java:137)
> at
> org.codehaus.xfire.aegis.type.AbstractTypeCreator.createTypeForClass(AbstractT
> ypeCreator.java:91)
> at
> org.codehaus.xfire.aegis.type.AbstractTypeCreator.createType(AbstractTypeCreat
> or.java:334)
> at
> org.codehaus.xfire.aegis.AegisBindingProvider.getSuggestedName(AegisBindingPro
> vider.java:226)
> at
> org.codehaus.xfire.service.binding.DefaultServiceConfiguration.getInParameterN
> ame(DefaultServiceConfiguration.java:160)
> at
> org.codehaus.xfire.service.binding.ObjectServiceFactory.getInParameterName(Obj
> ectServiceFactory.java:1018)
> at
> org.codehaus.xfire.service.binding.ObjectServiceFactory.addOperation(ObjectSer
> viceFactory.java:776)
> at
> org.codehaus.xfire.service.binding.ObjectServiceFactory.initializeOperations(O
> bjectServiceFactory.java:720)