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

JAX-WS 构建 Webservice 并部署到服务器上

发布时间:2020-12-16 23:04:24 所属栏目:安全 来源:网络整理
导读:第一步:新建web项目 创建服务接口 public ? interface ? SayHiService { ? ? public ? String sayHi(String jsonStr); } 其实现类,添加webservice注解 import ? javax.jws.WebParam; import ? javax.jws.WebService; import ? javax.jws.soap.SOAPBinding;
第一步:新建web项目

创建服务接口
public? interface? SayHiService {
?? public? String sayHi(String jsonStr);
}

其实现类,添加webservice注解
import? javax.jws.WebParam;
import? javax.jws.WebService;
import? javax.jws.soap.SOAPBinding;

@WebService ?
@SOAPBinding (style =? SOAPBinding? .Style. RPC )?
public? class? SayHiServiceImpl? implements? SayHiService {

????? @Override
????? public? String sayHi(? @WebParam (name= "jsonStr"? ) String jsonStr) {
??????????
??????????? return? "Hi "? + jsonStr + ",Welcome to WS World!" ;
?????}

}

服务发布测试类:

import? javax.xml.ws.Endpoint;

public? class? WsServerStart {
????? public? static? void? main(String[] args) {?
??????????SayHiService ws =? new? SayHiServiceImpl();?
? ? ? ? ? Endpoint.publish( " http://localhost:8080/WebService/hello " ,ws);?
??? }?
}

运行该测试类,在浏览器中输入 http://localhost:8080/WebService/hello
看到如下界面,即为服务发布成功:




第二步:将web服务部署到服务器

在项目WEB-INF下创建2个xml配置文件:
1)sun-jaxws.xml
? ? ? ? 指定webservice的实现类
<? ?xml ? version =? "1.0" ? encoding? = ?"UTF-8" ?>
< ?endpoints
?? xmlns = ?"http://java.sun.com/xml/ns/jax-ws/ri/runtime"
?? version = ?"2.0" >
?? < endpoint
?????? name =? "HelloWorld"
?????? implementation ?= "com.jow.SayHiServiceImpl"
?????? url-pattern ?= "/hello"? />
</ ?endpoints >

2)web.xml
? 指定监听器和servlet
<? ?xml ? version =? "1.0" ? encoding? = ?"UTF-8" ?>
<! ?DOCTYPE ? web-app ? PUBLIC? "-//Sun Microsystems,
Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_3.dtd"? >
?
< ?web-app >
???? < listener? >
???????? < listener-class >? com.sun.xml.ws.transport.http.servlet.WSServletContextListener? </ ?listener-class >
???? </ listener? >
???? < servlet? >
???????? < ?servlet-name >? hello </? servlet-name ?>
???????? < ?servlet-class >
??????? ??com.sun.xml.ws.transport.http.servlet.WSServlet
???????? </ ?servlet-class >
???????? < ?load-on-startup >? 1 </? load-on-startup ?>
???? </ servlet? >
???? < servlet-mapping? >
???????? < ?servlet-name >? hello </? servlet-name ?>
???????? < ?url-pattern >? /hello </? url-pattern ?>
???? </ servlet-mapping? >
???? < session-config? >
???????? < ?session-timeout >? 120 </? session-timeout ?>
???? </ session-config? >?
</ ?web-app >

导入jar包:
?由于 WSServletContextListener ? 和?? WSServlet 需要引入jar包

导入jaxws-ri-2.2.8下的jar包即可


第三步:部署webservice项目
导出war包,上传至tomcat中webapps目录下即可

验证
在浏览器中输入;
http://localhost:8080/WebService/hello

出现以下界面,即为服务部署成功:

?

(编辑:李大同)

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

    推荐文章
      热点阅读