Hi Venkatesh, I've just tried your idea, and it doesn't seem to work for me. I've added a bean mapping for java.util.Vector, as you suggested, following the model from the code I originally posted, and I've added another registerTypeMapping to call for Vector using VectorSerialiser and VectorDeserialiser. I'm still getting the same error, which is telling me that there is no deserialiser for Student.
Cheers, Bryan Venkatesh Kancharla <[EMAIL PROTECTED] To: [EMAIL PROTECTED] nomics.com> cc: Subject: Re: Unregistered Deserializer??? 10/06/2003 03:48 p.m. Please respond to axis-user Hi Bryan, You are returning a vector. So, you need to specify serializer for both vector and Student. Venkatesh Kancharla Associate (Software) Strand Genomics (http://www.strandgenomics.com) Bangalore, India Ph no: 3618992,93, 94, 95 (ext-210) --------------------------------------------------------------------- If Necessity Is the Mother of Invention, then frustration Is Its Father -unknown --------------------------------------------------------------------- On Tue, 10 Jun 2003 [EMAIL PROTECTED] wrote: > Hi, > > I'm trying to return an array of beans, and am having problems. I'm using > axis 1.1 rc2. The first message I got was that my student class had no > registered serializer, so I added this to my deploy.wsdd: > > <beanMapping > qname="myNS:com.greenpulse.demo.model.Student" > xmlns:myNS="urn:BeanService" > languageSpecificType="java:com.greenpulse.demo.model.Student" > /> > > Then I got a message about their being no registered deserializer, so I > added this to my simple client class: > > call.registerTypeMapping(Student.class, > new QName("urn:BeanService", > "com.greenpulse.demo.model.Student"), > BeanSerializerFactory.class, > BeanDeserializerFactory.class); > > > However, this didn't help. > > So, I'm lost, and would appreciate some help :-) > > Here's my java and deployment files: > > TIA -- Bryan > > Main: > private static void getStudents(String search) throws ServiceException, > RemoteException > { > System.out.println("Getting students"); > Service service = new Service(); > Call call = (Call) service.createCall(); > call.registerTypeMapping(Student.class, > new QName("urn:BeanService", > "com.greenpulse.demo.model.Student"), > BeanSerializerFactory.class, > BeanDeserializerFactory.class); > > call.setTargetEndpointAddress(ADDRESS); > call.setOperation("getByName"); > String[] args = {search}; > System.out.println("invoking"); > Object o = call.invoke(args); > System.out.println("o = " + o); > } > > -- > > Students.java > package com.greenpulse.demo.model; > > import java.util.Vector; > > public class Students > { > public Vector getByName(String name) > { > Vector v = new Vector(); > for (int i = 0; i < 10; i++) > v.add(new Student("id " + i, > "male", > "25/12/1980", > "En", > "comment " + i, > "email" + i + " > @nowhere.com", > "Mr", > "family " + i, > "given " + i)); > return v; > } > } > > -- > Student.java > package com.greenpulse.demo.model; > > import java.io.Serializable; > > /** > * Correspondence School (c) 2003 All rights reserved > * www.demo.greenpulse.com > */ > public class Student > { > private String studentID; > private String gender; > private String birthDate; > private String FirstLanguage; > private String comment; > private String email; > private String title; > private String familyName; > private String givenNames; > > public Student() > { > } > > public Student(String studentID, String gender, String birthDate, > String firstLanguage, String comment, String email, String title, String > familyName, String givenNames) > { > this.setStudentID(studentID); > this.setGender(gender); > this.setBirthDate(birthDate); > this.setFirstLanguage(firstLanguage); > this.setComment(comment); > this.setEmail(email); > this.setTitle(title); > this.setFamilyName(familyName); > this.setGivenNames(givenNames); > } > > public String getStudentID() > { > return studentID; > } > > public void setStudentID(String studentID) > { > this.studentID = studentID; > } > > public String getGender() > { > return gender; > } > > public void setGender(String gender) > { > this.gender = gender; > } > > public String getBirthDate() > { > return birthDate; > } > > public void setBirthDate(String birthDate) > { > this.birthDate = birthDate; > } > > public String getFirstLanguage() > { > return FirstLanguage; > } > > public void setFirstLanguage(String firstLanguage) > { > FirstLanguage = firstLanguage; > } > > public String getComment() > { > return comment; > } > > public void setComment(String comment) > { > this.comment = comment; > } > > public String getEmail() > { > return email; > } > > public void setEmail(String email) > { > this.email = email; > } > > public String getTitle() > { > return title; > } > > public void setTitle(String title) > { > this.title = title; > } > > public String getFamilyName() > { > return familyName; > } > > public void setFamilyName(String familyName) > { > this.familyName = familyName; > } > > public String getGivenNames() > { > return givenNames; > } > > public void setGivenNames(String givenNames) > { > this.givenNames = givenNames; > } > > public String toString() > { > return this.studentID + " " + > this.gender + " " + > this.birthDate + " " + > this.FirstLanguage + " \"" + > this.comment + "\" " + > this.email + " " + > this.title + " " + > this.familyName + " " + > this.givenNames; > > } > } > > > Cheers, > > Bryan > >