注意:JDK环境为1.6及以上
package com;
import Javax.jws.WebService;
@WebService
public class SayHello {
private static final String SALUTATION = "Hello";
public String getGreeting(String name) {
return SALUTATION + " " + name;
}
}
请注意清单 1 中粗体显示的代码。这称为 Annotation 或元数据,由 Java SE 5 中引入的 Web Services 元数据规范 (Web Services Metadata Specification) 所使用。开发人员在对类和方法应用 Annotation 之前定义类和方法,以向运行时引擎指明如何将类及其方法作为 Web Services 和 Web Services 操作来启用。Java SE 6 附带了这样一个引擎。
@WebService
Annotation 将 SayHello
类标记为实现某个 Web Services ,从而产生可部署的 Web Services 。这个特定的 Annotation 是一个 WSDL 映射 Annotation,并将 Java 源代码与表示 Web Services 的 WSDL 元素相关联。(有关 Java SE 6 中的其他 Annotation 的更多信息,请参阅参考资料。)
假设编译后的文件在 F:/src/com/SayHello.class
1.进入CMD命令台:
2.进入src目录: F:/src>
3.输入: wsgen -cp . -keep -s F:/ com.SayHello
4.在F:下会生成一个com/jaxws目录,里面有两个类 GetGreeting.java和GetGreetingResponse.java
package com;
import Javax.xml.ws.Endpoint;
public class RunService {
public static void main(String[] args) {
System.out.println("SayHello Web Service started.");
Endpoint.publish("http://localhost:8080/wsServerExample",
new SayHello());
}
}
查看 WSDL
输入 URL,例如 http://localhost:8888/wsServerExample?wsdl
完成!