实现原理类同于 http://blog.csdn.net/daryl715/archive/2007/09/20/1793826.aspx,一点区别在于本文着重讨论远程服务返回复杂类型的情况,其实也就是对返回类型在webservice做一些配置,客户端进行一些修改等
服务端:
POJO及远程接口
package
ch16.ComplexAxis;
public interface MessageService ... {
public MessageBean getMessageBean();
}
package ch16.ComplexAxis;
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface RemoteMessageService extends Remote ... {
public MessageBean getMessageBean () throws RemoteException;
}
public interface MessageService ... {
public MessageBean getMessageBean();
}
package ch16.ComplexAxis;
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface RemoteMessageService extends Remote ... {
public MessageBean getMessageBean () throws RemoteException;
}
服务接口实现
package
ch16.ComplexAxis;
public class SimpleMessageServie implements MessageService ... {
public MessageBean getMessageBean() ...{
return new MessageBean("helloworld","gaoxiang");
}
}
public class SimpleMessageServie implements MessageService ... {
public MessageBean getMessageBean() ...{
return new MessageBean("helloworld","gaoxiang");
}
}
JavaBean:
package
ch16.ComplexAxis;
import java.io.Serializable;
public class MessageBean implements Serializable ... {
private String message;
private String senderName;
public MessageBean()...{
}
public MessageBean(String message, String senderName) ...{
this.message = message;
this.senderName = senderName;
}
public String getMessage() ...{<
import java.io.Serializable;
public class MessageBean implements Serializable ... {
private String message;
private String senderName;
public MessageBean()...{
}
public MessageBean(String message, String senderName) ...{
this.message = message;
this.senderName = senderName;
}
public String getMessage() ...{<