加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webservice 笔记(小结) axis2 集成spring 传递对象

发布时间:2020-12-17 01:17:18 所属栏目:安全 来源:网络整理
导读:1、在服务器端建立一个Person类,内容如下: package sample.service; //一定要实现java.io.Serializable接口 public class Person implements java.io.Serializable{ ??private String name ; ? ??private String age; ??public String getName() { ?? ?ret

1、在服务器端建立一个Person类,内容如下:

package sample.service;
//一定要实现java.io.Serializable接口
public class Person implements java.io.Serializable{

??private String name ;
?
??private String age;

??public String getName() {
?? ?return name;
? }

? public void setName(String name) {
??? this.name = name;
?}

?public String getAge() {
??return age;
?}

?public void setAge(String age) {
??this.age = age;
?}
}

?

在 ServiceServer类中增加如下方法

?

package sample.service;

public class ServiceServerImpl implements ServiceServer {
//定义sayHello 方法
?public String sayHello(String name);

//定义getperson 方法
?public Person getPerson(Person person);

?


}

?

?

在相应的实现类中增加内容如下:

?

package sample.service;

public class ServiceServerImpl implements ServiceServer {
//定义sayHello 方法
?public String sayHello(String name) {
??
??return "hello"+name;
?}
//定义getperson 方法,传递Person对象
?public Person getPerson(Person person) {
??
??return person;
?}

}

?

在services.xml中增加

?

?<operation name="getPerson">
???<messageReceiver
????class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
?</operation>

?

?

?2、通过wsdl的方式自动生成客户端:
3、ServiceClient客户端中建立ServiceClientPerson类,内容如下:

package sample.service;

public class ServiceClientPerson {

?/**
? * @param args
? */
?public static void main(String[] args) throws java.lang.Exception {

??HelloWorldStub stub = new HelloWorldStub();
//??创建Person对象
??HelloWorldStub.Person person = new HelloWorldStub.Person();
??person.setAge("23");
??person.setName("张三");
//??设置要调用的方法的值
??HelloWorldStub.GetPerson getPerson = new HelloWorldStub.GetPerson();
??getPerson.setPerson(person);
//??调用getPerson并得到相应的返回值
??HelloWorldStub.GetPersonResponse response = stub.getPerson(getPerson);
??
??System.out.println("age="+ response.get_return().getAge());
??System.out.println("name="+ response.get_return().getName());
??
?}

}

?

4、运行后在console中打印出

age=23
name=张三
说明调用成功
一定要注意的是,建立的Person一定要实现java.io.Serializable接口。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读