JAX-WS的官方网站,大家可以在这里下载JAR包:https://jax-ws.java.net/
- 构建maven项目jaxws-server
项目结构如下:
pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zhong</groupId>
<artifactId>jaxws-server</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>jaxws-client Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.2.7</version>
</dependency>
</dependencies>
<build>
<finalName>jaxws-client</finalName>
</build>
</project>
定义一个接口类UserService,类型是WebService
@WebService
public interface UserService {
@WebMethod(operationName="say")
public String say(@WebParam(name="name") String username);
}
定义实现这个接口类的实现类:UserServiceImpl
@WebService(endpointInterface="com.zhong.service.UserService")
public class UserServiceImpl implements UserService {
public String say(String username) {
System.out.println("UserServiceImpl->say[你好]");
return "UserServiceImpl->say_你好";
}
}
sun-jaxws.xml 的配置:
<?xml version="1.0" encoding="UTF-8"?>
<endpoints xmlns='http://java.sun.com/xml/ns/jax-ws/ri/runtime' version='2.0'>
<endpoint
name='UserServiceImpl'
implementation='com.zhong.service.UserServiceImpl'
url-pattern='/userService' />
</endpoints>
web.xml 的配置
<web-app>
<display-name>Archetype Created Web Application</display-name>
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
</web-app>
- 使用tomcat部署后,访问http://localhost:8080/jaxws-server/
再访问http://localhost:8080/jaxws-server/userService,就看到我们的服务。(注意:图片里的地址是错误的,我的工程名是后面更改的,抱歉类。)