jax-ws是java web service的标准规范,jdk本身就自带了API。但是如果要部署到服务器上的话,还需要一款实现。目前实现有metro(jax-ws ri), axis2, cxf。因为最近用到axis2,所以研究了一下axis2开发jax-ws的方法。编码我就不说了,遵循jax-ws规范就ok了。本文主要介绍一下axis2的配置。
其实没啥好说的,官网文档已经说明了http://axis.apache.org/axis2/java/core/docs/servlet-transport.html
这里简单翻译一下。
1.web.xml的配置
首先配置AxisServlet来接受所有的以services/开头的路径请求。
<servlet>
<servlet-name>AxisServlet</servlet-name>
<display-name>Apache-Axis Servlet</display-name>
<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
要注意的是url-pattern设置的路径前缀必须和axis2.xml文件中的servicePath参数一致。默认值为services,所以配成如上路径就不用改axis2.xml了。
2.axis2.xml当然要拷贝到WEB-INF目录下,服务器启动时会读取此文件。
3.就这么简单,然后就ok了。启动服务器比如tomcat,访问http://localhost:8080/xx/services/XxService?wsdl就能看到wsdl,后面的开发方式和规范的jax-ws并无二异。
4.如果要支持https,需要改axis2.xml,配置上端口(比如tomcat里配置的8080给http,8443给https)
<transportReceiver name="http" class="org.apache.axis2.transport.http.AxisServletListener">
<parameter name="port">8080</parameter>
</transportReceiver>
<transportReceiver name="https" class="org.apache.axis2.transport.http.AxisServletListener">
<parameter name="port">8443</parameter>
</transportReceiver>
5.如果要集成spring,你的web service必须继承SpringBeanAutowiringSupport,这一点很重要,不继承的话会发现其他bean怎么也注入不了,急的双脚跳。
public class MyServiceImpl extends SpringBeanAutowiringSupport implements MyService {
@Autowired
private MyBusiness myBusiness;
}
如此其他bean(这里是MyBusiness)就能自动装配进我们的web service了。
具体可以参考spring3.1文档的20.5小节,Web services
分享到:
相关推荐
axis,jax-ws,xfire客户端调用分析,以及webservice万能客户端
本文内容包括:Axis2中的JAXB在Axis2中使用JAX-WS结束语下载参考资料ApacheAxis2支持各种数据绑定技术,包括官方Java:trade_mark:标准JAXB2.x。Axis2还支持针对Web服务配置的Java标准JAX-WS2.x,作为其自有的配置...
EndPoint、JAX-WS方式的WebService,请根据“创建WebService的几种方式简介(EndPoint、JAX-WS、CXF、axis2、自定义Servlet+Document解析)”文章配套练习
网络服务轴 2 使用 SOAP 和 Apache Axis2 (JAX-WS) 和 XStream 的 Web 服务(客户端和服务器)示例
axis2-idea-plugin-1.7.9
axis2-ws Java实现WebService的两种方式 axis2 jax-ws
axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip,解压即可使用
axis2-spring-1.5.4.jar axis2-transport-http-1.5.4.jar axis2-transport-local-1.5.4.jar axis2-xmlbeans-1.5.4.jar commons-httpclient-3.1.jar httpcore-4.0.jar neethi-2.0.4.jar wsdl4j-1.6.2.jar XmlSchema-...
共四个文件,都是最先版的,希望可以帮助大家。axis2-eclipse-service-archiver-wizard和axis2-eclipse-codegen-wizard和axis2-1.6.1-bin和axis2-1.6.1-war
NULL 博文链接:https://qidaoxp.iteye.com/blog/610149
目前axis2最高版本是2.0以上的版本,但是eclipse和myeclipse都不支持,无奈只能使用低版本的插件1.6.3;经实验,可以安装成功; 安装方法:右键解压到当前文件夹,Copy解压的文件到eclipse安装目录dropins下,重启...
官方版本,亲测可用
-->axis2-spring-1.6.1.jar -->axis2-transport-http-1.6.1.jar -->XmlSchema-1.4.7.jar -->wsdl4j-1.6.2.jar -->axiom-api-1.2.12.jar -->axiom-impl-1.2.12.jar -->neethi-3.0.1.jar -->axis2-transport-...
绝对可以用,里面配有myeclipse10安装AXIS2插件的步骤,希望大家工作愉快,谢谢,给好评哦
axis2-eclipse-service-archiver-wizard.zip
axis2-std-1.0-bin.zip与axis2.war axis2-std-1.0-bin.zip与axis2.war
本书详细描述了怎样使用spring-ws构造web service应用,这个framework是可以和CXF和AXIS媲美的web service开发框架,简单易配置,可实现web service的快速开发。
axis2包含axis2-1.4.1-war.zip和axis2-1.4.1-bin.zip,希望大家喜欢。
axis2-eclipse-codegen-plugin-1.6.2+axis2-eclipse-service-plugin-1.6.2