【发布时间】:2015-06-23 21:58:48
【问题描述】:
我有这样的问题: 创建您自己的 SOAP Web 服务,该服务将保存有关人员的信息 (例如在地图中)。每个人都有以下属性: 名字,姓氏,出生日期。 您的 Web 服务将响应一个查询,该查询将根据以下内容过滤存储的条目:姓氏、出生日期。 根据提供的示例创建一个 JUnit 测试,以验证您的 SOAP Web 服务是否按预期工作。
我在 Eclipse 中创建了动态 Web 项目并编写了如下类:
public class Person {
String firstName, surname, birthDate;
public Person(String firstName, String surname, String birthDate) {
this.firstName = firstName;
this.surname = surname;
this.birthDate = birthDate;
}
}
和搜索:
public class Search {
ArrayList<Person> people = new ArrayList<Person>();
public Search() {
Person jim = new Person("Jim", "Abacki","01/01/1990");
Person scott = new Person("Scott","Babacki", "01/01/1990");
Person anna = new Person("Anna","Cabacki", "01/01/1991");
Person dan = new Person("Dan","Dabacki", "01/01/1992");
Person ola = new Person("Ola","Fabacki", "01/01/1993");
Person eva = new Person("Eva","Fabacki", "01/01/1991");
people.add(jim);
people.add(scott);
people.add(anna);
people.add(dan);
people.add(ola);
people.add(eva);
}
public String[] searchBySurname(String surname){
int i =0;
for(Person x : people){
if(x.surname==surname){
i++;
}
}
String[] result = new String[i];
int a=0;
for(Person x : people){
if(x.surname==surname){
result[a]=x.firstName+ " "+ x.surname + " "+ x.birthDate;
a++;
}
}
return result;
}
public String[] searchByBirthDate(String birthDate){
int i =0;
for(Person x : people){
if(x.surname==birthDate){
i++;
}
}
String[] result = new String[i];
int a=0;
for(Person x : people){
if(x.surname==birthDate){
result[a]=x.firstName + " "+ x.surname + " "+ x.birthDate;
a++;
}
}
return result;
}
}
然后我通过单击类 Search -> Web Services -> Create new Web Service 添加了新的 Web 服务(在属性中我选择了 Axis2 和 Tomcat 服务器)。然后我对 Person 类做了类似的事情。
我认为一切正常,所以我添加了带有搜索的 Web 服务客户端,然后我尝试添加人员 Web 服务,但出现了错误:WSDL 代码生成期间发生异常:org.apache.axis2.AxisFault:否在 portType 元素中找到的操作。
当我尝试调用操作时:
SearchStub a = new SearchStub();
a.searchBySurname(...);
代替点 Eclipse 给了我这样的建议:
a.searchBySurname(SearchBySurname searchBySurname2);
这对我来说也很奇怪,因为这个函数作为参数应该接受字符串。
这是我的问题: 我究竟做错了什么?你能帮我解决这个问题吗?也许有人有很好的教程,因为我在互联网上找到的没有帮助。
【问题讨论】:
标签: java eclipse web-services soap