实现原理类同于 http://blog.youkuaiyun.com/daryl715/archive/2007/09/20/1793826.aspx,一点区别在于本文着重讨论远程服务返回复杂类型的情况,其实也就是对返回类型在webservice做一些配置,客户端进行一些修改等
服务端:
POJO及远程接口


















服务接口实现












JavaBean:








































WEB服务实现

























spring配置文件:










axis部署描述符(增加了对复杂返回类的配置)



















web.xml





















客户端:
Spring没有为返回复杂类型的情况提供相应的JaxRpcPortProxyFactoryBean提供实现,所以我们必须自定义一个





























其中Qname的属性和axis配置过的对应
客户端spring配置文件






























测试代码:




















运行服务端后,运行客户端测试程序,会出现以下结果
log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
helloworld by gaoxiang
证明webservice返回复杂类型测试成功