Bill
[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