我定义的UserInfoWrapper 对象:
package com.test;
import java.io.Serializable;public class UserInfoWrapper implements Serializable {
//相关消息 //用户信息列表     private int recordNum;     private String message;     private UserInfo[] userInfo;
class UserInfo{
private String login ;
    private String orgAddr;
    private String orgId;
    private String orgName;
    private String userId;
    private String username;
    public String getlogin() {
return login;
}

public void setlogin(String login) {
this.login = login;
}
public String getorgAddr() {
return orgAddr;
}

public void setorgAddr(String orgAddr) {
this.orgAddr = orgAddr;
}
public String getorgId() {
return orgId;
}

public void setorgId(String orgId) {
this.orgId = orgId;
}
public String getorgName() {
return orgName;
}public void setorgName(String orgName) {
this.orgName = orgName;
}
public String getuserId() {
return userId;
}public void setuserId(String userId) {
this.userId = userId;
}
public String getusername() {
return username;
}public void setusername(String username) {
this.username = username;
}}
    public int getRecordNum() {
        return recordNum;
    }     public void setRecordNum(int recordNum) {
        this.recordNum = recordNum;
    }     public String getMessage() {
        return message;
    }     public void setMessage(String message) {
        this.message = message;
    }     public UserInfo[] getUserInfo() {
        return userInfo;
    }     public void setUserInfo(UserInfo[] userInfo) {
        this.userInfo = userInfo;
    } }
调用所使用的测试代码:
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;
import java.net.MalformedURLException;
import java.net.SocketTimeoutException;
import java.rmi.RemoteException;
import java.io.Serializable;
import org.apache.axis.encoding.ser.*;
import javax.xml.namespace.QName;
import com.test.*;
import org.apache.axis.encoding.XMLType;
import org.apache.axis.utils.Options;
import javax.xml.rpc.ParameterMode;
import java.util.*;public class test{

public static void main(String args[]) { try{
String endpoint = "http://168.134.65.36/services/UserInfoService?wsdl";
        Service service = new Service();
        QName qn = new QName("urn:UserInfoService","UserInfoService");    
        Call call = null;
        call = (Call) service.createCall();               
        call.registerTypeMapping(UserInfoWrapper.class, qn,new BeanSerializerFactory(UserInfoWrapper.class, qn),new BeanDeserializerFactory(UserInfoWrapper.class, qn));
        
        call.setOperationName( "pageSearch");
        call.setTargetEndpointAddress(new java.net.URL(endpoint));
       /*
        call.addParameter( "login", XMLType.XSD_STRING, ParameterMode.IN); 
        call.addParameter( "userName", XMLType.XSD_STRING, ParameterMode.IN);
        call.addParameter( "orgName", XMLType.XSD_STRING, ParameterMode.IN);
        call.addParameter( "roleNo", XMLType.XSD_STRING, ParameterMode.IN);
        call.addParameter( "pageIndex", XMLType.XSD_INT, ParameterMode.IN);
        call.addParameter( "pageSize", XMLType.XSD_INT, ParameterMode.IN);
        call.setReturnClass(UserInfoWrapper.class);*/
        UserInfoWrapper ret=new UserInfoWrapper();
        ret= (UserInfoWrapper)call.invoke(new Object[]{"","","","",2,2}); 
       
         System.out.print("num="+ret.getRecordNum());
        
        
}catch(Exception ex){
ex.printStackTrace();
}

}
}
运行之后出现错误:
org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
at org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:145)
at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:345)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.client.Call.invoke(Call.java:2467)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at test.main(test.java:40)
AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode: 
 faultString: org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
 faultActor: 
 faultNode: 
 faultDetail: 
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
at org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:145)
at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:345)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.client.Call.invoke(Call.java:2467)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at test.main(test.java:40) {http://xml.apache.org/axis/}hostname:zrorg.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
at org.apache.axis.client.Call.invoke(Call.java:2470)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at test.main(test.java:40)
Caused by: org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
at org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:145)
at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:345)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.client.Call.invoke(Call.java:2467)
... 3 more
请问到底是什么原因?