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
出现以下界面,即为服务部署成功:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 35 个必须有的Bootstrap工具和生成器
- angular-cli6使用ng serve --o 控制台报错Invalid Host Hea
- WebService、RMI、RPC、XML-RPC、JSON-RPC、SOAP、REST(re
- 如何将Scala @specialized用于围绕基元的内存高效包装类?
- Angular2 w / Typescript下的Sequelize
- twitter-bootstrap – twitter bootstrap的后台打印问题
- 容器之间的链接不能使用docker-compose版本2
- angularjs – 关闭modalInstance时发送多个参数
- 在erlang进程之间发送消息:Atoms vs Binaries
- Bootstrap 第17章 按钮和折叠插件