微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[一站式服务]部署Webservice及启动脚本

前言

Java中,创建Webservice项目的时候,一般会用到两个组件:XFire和Jax-ws,根据需要的不同,两者都有可能会用到,在这里记录一下。
另外,当部署到生产环境的时候,即导出jar包的方式运行,那么就需要启动脚本,自动加载依赖jar包,来执行程序。下面会展示Windows和Linux的版本。
      本图很好了解释了JAX-WS的流程



流程

  • spring+jax-ws
1、spring配置文件:(参考: 官方spring集成示例
(1)在web.xml中注册 JAX-WS servlet
(2)接着在spring配置文件添加文件、Handler、service绑定及创建Web Service bean
2、Handler:
(参考: 官方Handler示例
3、Web Service入口类

学习成果(遇到的坑)

1、Handler中getHeaders()返回的null值,容易造成空指针异常,所以推荐使用Collections.emptySet()。原因请看文献[3]
2、 上节第二个流程,Handler中out.println()替换成org.apache.log4j.Logger,方便输出日志;
此外,logToSystemOut()方法体中,适当优化if-else,改成?:三元操作符。详细代码请看最佳实践1
3、Windows和linux的启动脚本 .sh和.bat

--------------------------------------------------2014年5月23日更新:增加对Webservice的性能测试----------------------
1、之前单元测试的时候使用的JUnit,但是遇到压力测试和性能测试的时候,就得用上TestNG了,参考: 使用TestNG进行性能测试

最佳实践


参考文献

[1]. 使用XFire组件开发WebService实例:讲解了webservice的本质,并以例子展示

[2]. 5天学会jaxws-webservice编程第一天:分五篇来讲解,包括返回List<Object>、图片、附件上传

[3]. Prefer empty items to null ones:解释了用空集合代替null值的原因

[4]. JAX-WS 维基百科 :整合了JAX-WS的所有资源

[5]. JAX-WS 注释,如@WebResult解释

[6]. Java jax ws tutorial develop web services clients consumers:针对JAX_WS注释详细的案例

[7]. Creating a Simple Web Service and Client with JAX-WS:来自官方,The Java EE 5 Tutorial

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐